📅  最后修改于: 2023-12-03 15:31:46.497000             🧑  作者: Mango
在 JavaScript 中,错误有其各自的类型和名称,每个错误都有对应的名称属性。名称属性是一个字符串,通常包含错误类型和症状的信息,可以在调试和排查错误时很有用。
以下是 JavaScript 中常见的错误类型及其名称属性:
当一个变量或参数不是预期类型时,将引发类型错误。例如,当尝试使用非函数的变量作为函数时会导致类型错误。
let foo = "hello";
foo(); // TypeError: foo is not a function
当语法有错误时,将引发语法错误。例如,如果缺少分号或括号,就会导致语法错误。
let a = 10;
if (a > 5)
console.log("a is greater than five") // SyntaxError: Unexpected end of input
当尝试使用未声明的变量时,将引发引用错误。例如,如果试图访问未定义的变量,就会引发引用错误。
console.log(b); // ReferenceError: b is not defined
当 eval() 函数使用无效表达式时,将引发评估错误。
let expr = "2+2";
let result = eval(expr); // 4
expr = "2+";
result = eval(expr); // EvalError: Unexpected end of input
当使用无效的数值范围时,将引发范围错误。例如,当试图使用负数作为数组长度时,就会导致范围错误。
let arr = new Array(-1); // RangeError: Invalid array length
当使用无效的 URI 编码时,将引发 URI 错误。例如,当试图对未完全编码的字符串进行解码时,就会导致 URI 错误。
decodeURIComponent("%"); // URIError: URI malformed
以上是 JavaScript 常见的错误类型及其名称属性。当你在编写 JavaScript 代码时,对这些错误类型有基本的了解,可以帮助你更快地识别和修复错误。