Quels sont les types d’erreurs qui se produisent dans la programmation JavaScript ? Cet article vous présentera plusieurs types d'erreurs courantes qui se produisent dans la programmation JavaScript. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile. [Tutoriels vidéo associés recommandés : Tutoriel JavaScript]
Il existe trois principaux types d'erreurs dans la programmation JavaScript, à savoir : les erreurs de syntaxe, les erreurs d'exécution et les erreurs de logique.
Voyons quelles erreurs JavaScript seront trouvées lors de la compilation ?
1. Erreurs de syntaxe
Des erreurs de syntaxe, également appelées erreurs d'analyse, se produisent lors de la compilation et de la compilation des langages de programmation traditionnels. JavaScript.
Exemple 1, la ligne suivante provoque une erreur de syntaxe car il manque une parenthèse fermante.
<script type="text/javascript"> // window.print(; </script>
Exemple 2 :
123consloe.log(123) // 未捕获的语法错误:意外标识符 console.123) // 未捕获的语法错误: 出乎意料的数字
Lorsqu'une erreur de syntaxe se produit en JavaScript, seul le code contenu dans le même thread que l'erreur de syntaxe sera affecté, tandis que le code dans d'autres threads sera affecté. Le reste du code sera exécuté, en supposant qu'aucun d'entre eux ne dépend du code contenant l'erreur.
2. Erreurs d'exécution
Des erreurs d'exécution (également appelées exceptions) se produisent lors de l'exécution de JavaScript (compilation/erreur après explication).
1. ReferenceError (ReferenceError)
ReferenceError : Une erreur qui se produit lors de l'attribution d'une valeur à un objet qui ne peut pas être attribué, par exemple ; en tant qu'erreurs résultant de l'exécution ou de l'affectation d'une fonction.
Par exemple, la situation suivante :
// 引用了不存在的变量 a() // 未定义引用错误:a 未定义 console.log(b) // 未引用引用错误:b未定义 // 给一个无法被赋值的对象赋值 console.log("abc") = 1 // 未引用引用错误:左侧赋值无效
2. Range Error (RangeError)
RangeError : Cela se produit lorsque la plage valide est erreur dépassée. Il existe principalement les situations suivantes :
1) Lorsque la longueur du tableau est un nombre négatif, une erreur se produit
2) Lorsque le paramètre de méthode de l'objet Number dépasse la plage, une erreur se produit ;
3) Lorsque la pile de fonctions dépasse la valeur maximale, une erreur se produit.
Par exemple, la situation suivante :
// 数组长度为负数 [].length = -5 // 范围错误:无效的数组长度 // Number对象的方法参数超出范围 var num = new Number(12.34) console.log(num.toFixed(-1)) // 范围错误: 在Number.toFixed中,toFixEd()的数字参数必须在0到20之间。 // 说明: toFixed方法的作用是将数字四舍五入为指定小数位数的数字,参数是小数点后的位数,范围为0-20.
3. TypeError (TypeError)
TypeError : se produit lorsqu'une variable ou un paramètre n'est pas de l'erreur de type attendue.
Exemple : cette erreur sera générée lors de l'utilisation de types primitifs tels que de nouvelles chaînes et de valeurs booléennes et lors de l'appel de méthodes qui n'existent pas dans l'objet, car le paramètre de la nouvelle commande doit être un constructeur.
// 调用不存在的方法 123() // 类型错误: 123不是一个函数 var o = {} o.run() // 类型错误: o.run 不是一个函数 // new关键字后接基本类型 var p = new 456 // 类型错误: 456 不是构造函数
4. URIError : mauvaise utilisation des fonctions liées à l'URL
URIError : principalement parce que les paramètres des fonctions liées à l'URL sont incorrects.
Par exemple, la situation suivante :
decodeURI("%1") // URIError: 在解码过程中变形了的URI
L'erreur générée lorsque les paramètres liés à l'URI sont incorrects implique principalement les six fonctions suivantes :
encodeURI, decodeURI() , encodeURIComponent(), decodeURIComponent(), escape() et unescape()
5. EvalError : erreur d'exécution de la fonction eval()
EvalError : JavaScript sous ES5, lorsque la fonction eval() n'est pas exécutée correctement, une erreur evalError sera générée.
Par exemple, la situation suivante :
var myEval = eval; myEval("alert('call eval')");
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.
3. Erreurs logiques
Les erreurs logiques peuvent être le type d'erreurs le plus difficile à détecter. Ces erreurs ne sont pas le résultat d’erreurs de syntaxe ou d’exécution. Au contraire, ils se produisent lorsque vous faites une erreur dans la logique qui régit votre script et que vous n'obtenez pas les résultats escomptés.
Résumé : Ce qui précède représente l’intégralité du contenu de cet article, j’espère qu’il sera utile à l’étude de chacun.
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!