Maison  >  Article  >  interface Web  >  Résumé des types d'erreurs JS courants

Résumé des types d'erreurs JS courants

韦小宝
韦小宝original
2017-11-25 09:48:471342parcourir

Les erreurs lors de l'écriture du code js sont gênantes pour un novice qui vient de commencer à js, des erreurs dans js peuvent conduire à un dépannage. dessus depuis longtemps, et ma mentalité a sauté. Jetons un coup d'œil ensemble à cet article

Types d'erreurs courants JS

(1) SyntaxError

SyntaxError est une erreur de syntaxe qui se produit lors de l'analyse du code

// Erreur de nom de variable

var 1a;


// Crochets manquants
console.log 'hello');


(2) ReferenceError

ReferenceError est lorsqu'une variable qui n'existe pas est référencé. Une erreur s'est produite.

variable inconnue

// ReferenceError : la variable inconnue n'est pas définie

Un autre scénario de déclenchement consiste à attribuer une valeur à un objet qui ne peut pas être attribué, comme le résultat d'une fonction ou cette mission.

console.log() = 1

// ReferenceError : côté gauche invalide dans l'affectation

this = 1

// ReferenceError : invalide côté gauche dans l'affectation

Le code ci-dessus attribue le résultat d'exécution de la fonction console.log et ceci, et le résultat provoque une erreur ReferenceError

(3) RangeError

RangeError est une erreur qui se produit lorsqu'une valeur est en dehors de la plage valide. Il existe plusieurs situations principales, l'une est que la longueur du tableau est un nombre négatif, l'autre est que les paramètres de méthode de l'objet Number sont hors plage et que la pile de fonctions dépasse la valeur maximale.

nouveau tableau (-1)

// RangeError : longueur de tableau non valide

(1234).toExponential(21)

// RangeError : toExponential () doit être compris entre 0 et 20

(4) TypeError

TypeError est une erreur qui se produit lorsqu'une variable ou un paramètre n'est pas du type attendu. Par exemple, si vous utilisez la nouvelle commande sur des types primitifs tels que des chaînes, des valeurs booléennes et des valeurs numériques, cette erreur sera générée car le paramètre de la nouvelle commande doit être un constructeur.

nouveau 123

//TypeError : le nombre n'est pas une fonction

var obj = {}; undefined n'est pas une fonction

Dans le deuxième cas du code ci-dessus, appeler une méthode qui n'existe pas sur l'objet générera une TypeError.

(5) URIError

URIError est une erreur générée lorsque les paramètres des fonctions liées à l'URI sont incorrects, impliquant principalement encodeURI(), decodeURI(), encodeURIComponent(), decodeURIComponent(), escape() et unescape() ces six fonctions.

decodeURI('%2')

// URIError : URI mal formé

(6) EvalError

Lorsque la fonction eval n'est pas exécutée correctement, cela lancera une EvalError. Ce type d'erreur n'apparaît plus dans ES5 et n'est conservé que pour garantir la compatibilité avec le code précédent.

Les 6 erreurs dérivées ci-dessus, ainsi que l'objet Error d'origine, sont toutes des constructeurs. Les développeurs peuvent les utiliser pour générer artificiellement des instances d'objets d'erreur.

new Error("Une erreur s'est produite!");
new RangeError("Une erreur s'est produite, la variable dépasse la plage valide!");
new TypeError("Une erreur s'est produite, la le type de variable n'est pas valide!") ;

Le code ci-dessus représente une nouvelle instance de l'objet d'erreur. L'essence est de générer manuellement l'erreur. Comme vous pouvez le voir, le constructeur de l'objet d'erreur accepte un paramètre qui représente le message d'erreur.


Recommandations associées :

Questions d'entretien JS front-end

Native js implémente le code source de la boîte de div d'invite mobile

Manuel chinois HTML/CSS/JS adapté aux débutants et programmeurs PHP

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:JS obtient un effet roseArticle suivant:JS obtient un effet rose