Les erreurs sont lancées par le moteur et les exceptions sont lancées par le développeur. Mais qu’est-ce que cela veut dire? En JavaScript, toutes les exceptions sont simplement des objets. Bien que la majorité des exceptions soient des implémentations de la classe D’erreur globale, tout ancien objet peut être jeté. Dans cet esprit, il existe deux façons de lever une exception: directement via un objet D’erreur et via un objet personnalisé.,
exceptions génériques
bien que la classe D’erreur intégrée soit assez bien définie-y compris des éléments tels que le nom de fichier, le numéro de ligne et la trace de pile pour n’en nommer que quelques—uns—, la chose la plus importante à prendre en compte est le message. Le premier—et souvent le seul-paramètre à être passé lors de L’instanciation D’erreur, le message est une erreur lisible par l’homme qui peut souvent être liée directement à l’utilisateur final. Lancer une exception générique est presque aussi simple que cela puisse paraître., Il suffit d’instancier un objet d’exception—avec le premier paramètre du constructeur Error être le message d’erreur—et puis… « lancer » elle.
throw new Error('Exception message');
d’erreur.code vs d’erreur.message
Il est important de noter ici que, bien que le message d’erreur est humaine lisible données d’erreur, Nœud.js fournit également un code d’erreur qui identifie le type d’erreur qui est lancé. Cette valeur est utile car elle vous permet de vous adapter par programme aux erreurs qui peuvent être lancées, quel que soit le message contenu dans l’erreur.,
bien que les codes d’erreur soient généralement utilisés pour les erreurs système, lors de la création d’erreurs personnalisées en étendant la classe d’erreur (voir exceptions personnalisées ci-dessous pour plus de détails), un code personnalisé peut être défini et utilisé pour des définitions d’erreur plus structurées.
Personnalisé exceptions
Tandis qu’il est possible de lancer n’importe quel objet, la meilleure pratique est d’étendre l’objet d’Erreur avec une nouvelle classe. Dans les environnements qui le prennent en charge, cela permet d’inclure des fonctionnalités telles que la trace automatique de la pile dans la réponse d’exception, ce qui peut être crucial lorsqu’il s’agit de diagnostiquer les problèmes plus tard.,
avec un objet d’exception personnalisé créé, tout ce que nous avons à faire est de le lancer comme toute autre erreur:
throw new CustomException('Exception message');
Un autre grand avantage à étendre l’objet D’erreur, plutôt que de lancer une erreur générique, est que des métadonnées supplémentaires peuvent être incluses avec Cela peut être incroyablement précieux dans le débogage et les rapports d’erreurs, car parfois un message texte brut ne suffit tout simplement pas. Par exemple, vous pouvez inclure les valeurs de variables locales ou d’état qui peuvent vous aider à déboguer le problème.,
function CustomException(message, metadata) { const error = new Error(message); error.metadata = metadata; return error;}
en dehors des données incluses dans L’objet D’erreur, lors de l’utilisation du Rollbar notifier pour JavaScript, des données supplémentaires sont également incluses avec le rapport. Cela inclut des informations contextuelles telles que le navigateur et l’utilisateur.
// Caught errorstry { doSomething();} catch (e) { Rollbar.error("Something went wrong", e);}
l’Écriture de la console
En JavaScript, la console est l’endroit où tous les journaux peuvent être trouvés (plus que dans Où sont les Erreurs JavaScript Connecté?). Heureusement, l’écriture de données sur la console est incroyablement simple. Pour ce faire, appelez simplement la console.,méthode log (), avec le message que vous souhaitez écrire dans le journal.
console.log("Top level");
Leave a Reply