Référence de JavaScript 1.5 Core:Objets globaux:Error
Un article de MDC.
Sommaire |
[modifier] Résumé
Objet Core
Représente une erreur d'exécution.
[modifier] Création
Le constructeur Error :
new Error(); new Error(message);
Les erreurs d'exécution provoquent également la création et le déclenchement d'un nouvel objet Error.
[modifier] Paramètres
-
message - message d'erreur.
[modifier] Description
Outre le type de base Error, six autres types d'erreur existent en JavaScript 1.5 :
- EvalError : déclenchée lorsqu'une erreur se produit lors de l'exécution d'un code avec
eval() - RangeError : déclenchée lorsqu'une variable numérique ou paramètre est en dehors de son intervalle valide
- ReferenceError : déclenchée lors du déréférencement d'une référence invalide
- SyntaxError : déclenchée lorsqu'une erreur de syntaxe est détectée lors de l'analyse d'un code par
eval() - TypeError : déclenchée lorsqu'une variable ou paramètre n'est pas d'un type valide
- URIError : déclenchée lorsque
encodeURI()oudecodeURI()reçoivent des paramètres invalides
[modifier] Propriétés
- constructor : Spécifie la fonction de création du prototype d'un objet.
- description : Description de l'erreur ou message (Internet Explorer uniquement).
- fileName : Chemin vers le fichier qui a déclenché cette erreur (Mozilla uniquement).
- lineNumber : Numéro de ligne dans le fichier qui a déclenché cette erreur (Mozilla uniquement).
- message : Message d'erreur.
- name : Nom de l'erreur.
- number : Numéro d'erreur (Internet Explorer uniquement).
- prototype : Permet l'ajout de propriétés à un objet
Error. - stack : trace de la pile (Mozilla uniquement).
[modifier] Exemples
[modifier] Exemple : déclenchement d'une erreur générique
Habituellement, on crée un objet Error dans l'intention de le déclencher à l'aide du mot-clé throw. L'erreur peut être gérée par la construction try...catch :
try {
throw new Error("Ouups !");
}
catch (e) {
alert(e.name + " : " + e.message);
}
[modifier] Exemple : gestion d'une erreur particulière
Vous pouvez choisir de ne gérer que certains types d'erreurs particuliers en vérifiant le type d'erreur à l'aide de la propriété constructor de l'erreur, ou si vous écrivez pour un moteur JavaScript moderne, le mot-clé instanceof :
try {
foo.bar();
}
catch (e) {
if (e instanceof EvalError) {
alert(e.name + " : " + e.message);
}
else if (e instanceof RangeError) {
alert(e.name + " : " + e.message);
}
// ... etc
}