Maison >interface Web >js tutoriel >Explication détaillée de six types d'erreurs en JavaScript

Explication détaillée de six types d'erreurs en JavaScript

韦小宝
韦小宝original
2018-01-15 11:25:501908parcourir

Cet article vous donne une introduction détaillée aux six types d'erreurs en JavaScript Les étudiants qui viennent d'entrer dans la fosse front-end et qui ne sont pas très bons en anglais se grattent encore la tête à cause des erreurs de console ? Aujourd'hui, je vais vous amener à jeter un œil aux types d'erreurs courants en JavaScript. Si vous n'êtes pas familier avec les erreurs JavaScript, vous pouvez lire cet article ensemble

Les informations sur les erreurs de la console en js sont principalement divisées en deux catégories. . Un type est erreur de grammaire Si ce type d'erreur est rencontré lors du processus de pré-analyse, l'exécution de l'ensemble du fichier js échouera. Un autre type d'erreur est collectivement appelé exception. Ce type d'erreur empêchera le code après la ligne où l'erreur se produit de s'exécuter, mais le code avant cette ligne ne sera pas affecté.

1. SyntaxError : Erreur de syntaxe

// 1. Syntax Error: 语法错误
// 1.1 变量名不符合规范
var 1       // Uncaught SyntaxError: Unexpected number
var 1a       // Uncaught SyntaxError: Invalid or unexpected token
// 1.2 给关键字赋值
function = 5     // Uncaught SyntaxError: Unexpected token =

2. 🎜>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 une affectation de fonction.

// 2.1 引用了不存在的变量
a()       // Uncaught ReferenceError: a is not defined
console.log(b)     // Uncaught ReferenceError: b is not defined
// 2.2 给一个无法被赋值的对象赋值
console.log("abc") = 1   // Uncaught ReferenceError: Invalid left-hand side in assignment

3. RangeError : erreur de plage RangeError est une erreur qui se produit lorsqu'une plage est juste en dehors de la plage valide. 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 limites et que la pile de fonctions dépasse la valeur maximale.


// 3.1 数组长度为负数
[].length = -5      // Uncaught RangeError: Invalid array length
// 3.2 Number对象的方法参数超出范围
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.

4. TypeError Une erreur qui se produit lorsqu'une variable ou un paramètre n'est pas du type attendu. Par exemple, l'utilisation de new

string

, Boolean et d'autres types primitifs et méthodes d'appel qui n'existent pas dans l'objet générera cette erreur, car le paramètre de la nouvelle commande doit être un constructeur .

// 4.1 调用不存在的方法
123()        // Uncaught TypeError: 123 is not a function
var o = {}
o.run()        // Uncaught TypeError: o.run is not a function
// 4.2 new关键字后接基本类型
var p = new 456      // Uncaught TypeError: 456 is not a constructor

5. URIError, erreur d'URL est principalement due à des paramètres incorrects

de la fonction

associée.

Erreurs générées lorsque les paramètres liés à l'URI sont incorrects, impliquant principalement six fonctions : encodeURI, decodeURI(), encodeURIComponent(), decodeURIComponent(), escape() et unescape().
decodeURI("%")     // Uncaught URIError: URI malformed at decodeURI

6. EvalError Erreur d'exécution de la fonction eval()En JavaScript inférieur à ES5, lorsque la fonction eval() n'est pas exécutée correctement, un evalError sera lancé.

Par exemple, la situation suivante :

Il est à noter que cette erreur n'est plus générée en JavaScript au-dessus de ES5, mais vous pouvez toujours personnaliser ce type via le nouveau mot-clé Error message.
var myEval = eval;
myEval("alert('call eval')");

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 des instances d'objets d'erreur.

Le premier paramètre représente le message d'erreur, le deuxième est le nom du fichier et le troisième est le numéro de ligne.
new Error([message[,fileName[,lineNumber]]]),

RésuméVoici les six types d'erreurs en JavaScript introduits par l'éditeur. J'espère que cela vous sera utile ! !

Recommandations associées :

JavaScript pour mettre en œuvre une analyse de tri rapide

Partagez de meilleures solutions pour l'expérience JavaScript de manière asynchrone

javascript correspond au code de l'expression régulière commenté en js

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