TypeError

par 3 contributeurs :

Résumé

L'objet TypeError représente une erreur qui intervient lorsque la valeur n'est pas du type attendu.

Syntaxe

new TypeError([message[, nomFichier[, numLigne]]])

Paramètres

message
Paramètre optionnel. Une description de l'erreur dans un format compréhensible par un humain.
nomFichier
Paramètre optionnel. Le nom du fichier contenant le code qui a causé l'erreur.
numLigne
Paramètre optionnel. Le numéro de ligne du code qui a causé l'erreur

Description

Une exception TypeError est levée lorsque qu'un argument ou un opérande est utilisé avec une fonction ou un opérateur incompatible avec le type attendu.

Propriétés

TypeError.prototype
Permet d'ajouter des propriétés aux instances de TypeError.

Méthodes

L'objet global TypeError ne contient pas de méthodes qui lui sont propres. Il possède malgré tout des méthodes héritées via sa chaîne de prototypes.

Instances de TypeError

Propriétés

TypeError.prototype.constructor
Définit la fonction qui crée le prototype d'une instance.
TypeError.prototype.message
Un message d'erreur. Bien que la spécification ECMA-262 définisse que TypeError doive fournir une propriété directe pour message, SpiderMonkey la fait hériter de Error.prototype.message.
TypeError.prototype.name
Nom pour l'erreur, hérité depuis Error.
TypeError.prototype.fileName
Le chemin vers le fichier qui a causé l'erreur. Hérité depuis Error.
TypeError.prototype.lineNumber
La ligne du fichier qui a causé l'erreur. Hérité depuis Error.
TypeError.prototype.columnNumber
La colonne (la position dans la ligne) du fichier qui a causé l'erreur. Hérité depuis Error.
TypeError.prototype.stack
La pile d'appels (stack trace). Héritée depuis Error.

Méthodes

Bien que l'objet prototype pour TypeError ne contienne aucune méthode propre (qui lui soit directement rattachée), TypeError hérite de certaines méthodes grâce à la chaîne de prototypes.

Exemples

Intercepter une exception TypeError

try {
  null.f();
} catch (e) {
  console.log(e instanceof TypeError); // true
  console.log(e.message);              // "null has no properties"
  console.log(e.name);                 // "TypeError"
  console.log(e.fileName);             // "Scratchpad/1"
  console.log(e.lineNumber);           // 2
  console.log(e.columnNumber);         // 2
  console.log(e.stack);                // "@Scratchpad/2:2:3\n"
}

Créer une exception TypeError

try {
  throw new TypeError('Coucou', "unFichier.js", 10);
} catch (e) {
  console.log(e instanceof TypeError); // true
  console.log(e.message);              // "Coucou"
  console.log(e.name);                 // "TypeError"
  console.log(e.fileName);             // "unFichier.js"
  console.log(e.lineNumber);           // 10
  console.log(e.columnNumber);         // 0
  console.log(e.stack);                // "@Scratchpad/2:2:9\n"
}

Spécifications

Spécification Statut Commentaires
Troisième édition d'ECMAScript. Standard Définition initiale.
ECMAScript 5.1 (ECMA-262)
La définition de 'TypeError' dans cette spécification.
Standard  
ECMAScript 6 (ECMA-262)
La définition de 'TypeError' dans cette spécification.
En cours de validation comme recommandation  

Compatibilité des navigateurs

Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari
Support simple (Oui) (Oui) (Oui) (Oui) (Oui)
Fonctionnalité Android Chrome pour Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support simple (Oui) (Oui) (Oui) (Oui) (Oui) (Oui)

Voir aussi

Étiquettes et contributeurs liés au document

Contributeurs à cette page : SphinxKnight, teoli, miam
Dernière mise à jour par : SphinxKnight,