Les types d'erreurs du programme JavaScript sont divisés en : 1. Erreur ; 2. EvalError ; 3. RangeError ; 4. ReferenceError (erreur de référence) ;
L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.
Types d'erreur en JavaScript
ECMA-262 définit 7 types d'erreur :
Error
EvalError
RangeError
ReferenceError
SyntaxError
TypeError
URIError
où Error est le type de base (le type parent des six autres types), et les autres types en héritent. Le type Error est rare et est généralement utilisé par les navigateurs. lancé par le navigateur. Ce type de base est principalement utilisé par les développeurs pour générer des erreurs personnalisées.
1. SyntaxError (erreur de syntaxe) :
1.1 Le nom de la variable n'est pas conforme à la spécification
var 1 // Uncaught SyntaxError: Unexpected number var 1a // Uncaught SyntaxError: Invalid or unexpected token
1.2 Affectation d'une valeur au mot-clé
function = 5 // Uncaught SyntaxError: Unexpected token =
2. Erreur de référence non interceptée ( erreur de référence) :
Une erreur se produit lors du référencement d'une variable qui n'existe pas. Attribuez une valeur à un objet qui ne peut pas être attribué, comme le résultat d'une fonction ou Affectation des fonctions.
2.1 Référence à une variable inexistante
a(); // Uncaught ReferenceError: a is not defined console.log(b); // Uncaught ReferenceError: b is not defined
2.2 Assigner une valeur à un objet qui ne peut pas être assigné
console.log("abc") = 1 // Uncaught ReferenceError: Invalid left-hand side in assignment
3. quand un l'objet n'est valide qu'au-delà d'une erreur survenue pendant la portée. Il existe plusieurs situations principales. La première est que la longueur du tableau est un nombre négatif. La seconde est que les paramètres de méthode de l'objet Number sont hors plage et que la pile de fonctions dépasse la taille maximale. 3.1 La longueur du tableau est négative n'est pas du type attendu. Par exemple, utiliser de nouveaux types primitifs tels que des chaînes et des valeurs booléennes et l'objet appelant n'existe pas La méthode générera cette erreur car le paramètre de la nouvelle commande doit être un constructeur.
4.1 Appel d'une méthode inexistante[].length = -5; // Uncaught RangeError: Invalid array lengthCopier après la connexion
4.2 Le nouveau mot-clé est suivi du type de base
var num = new Number(12.34); console.log(num.toFixed(-1)); // Uncaught RangeError: toFixed() digits argument must be between 0 and 20 at Number.toFixed // 说明: toFixed方法的作用是将数字四舍五入为指定小数位数的数字,参数是小数点后的位数,范围为0 -20.
123(); // Uncaught TypeError: 123 is not a
function
var o = {};
o.run(); // Uncaught TypeError: o.run is not a function
6. EvalError eval() (erreur d'exécution de la fonction) :
var p = new 456(); // Uncaught TypeError: 456 is not a constructor
【Apprentissage recommandé : 】decodeURI("%"); // Uncaught URIError:
URI malformed at decodeURI
Familiarisez-vous avec ces types d'erreurs de base et vous pourrez rapidement localiser et résoudre le problème lorsqu'une erreur se produit.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!