温馨提示×

JS日志中常见的异常类型有哪些

小樊
45
2025-09-24 00:14:52
栏目: 编程语言

在JavaScript中,常见的异常类型主要包括以下几种:

1. SyntaxError(语法错误)

  • 当代码不符合JavaScript的语法规则时抛出。
  • 例如:var x = ;function foo() { return }

2. ReferenceError(引用错误)

  • 当试图访问一个未声明的变量时抛出。
  • 例如:console.log(y); 其中 y 未定义。

3. TypeError(类型错误)

  • 当操作数或函数参数的类型不正确时抛出。
  • 例如:"hello".length = 5;null.toString();

4. RangeError(范围错误)

  • 当数值超出允许的范围时抛出。
  • 例如:Array(-1);Math.sin(Infinity);

5. EvalError(Eval错误)

  • eval() 函数的使用不当导致错误时抛出。
  • 注意:现代JavaScript引擎通常不会抛出此错误,因为 eval() 的使用已经受到严格限制。

6. URIError(URI错误)

  • encodeURI()decodeURI() 函数的使用不当导致错误时抛出。
  • 例如:encodeURI("http://example.com/?q=测试"); 中的参数包含非法字符。

7. InternalError(内部错误)

  • 当JavaScript引擎遇到无法处理的异常情况时抛出。
  • 这通常是由于引擎本身的bug引起的。

8. AggregateError(聚合错误)

  • 在ES2022中引入,用于表示多个错误同时发生的情况。
  • 例如:当你尝试解构一个空数组时,可能会抛出 AggregateError

9. PromiseError(Promise错误)

  • 当Promise链中的某个Promise被拒绝时抛出的错误。
  • 可以通过 .catch() 方法捕获。

10. CustomError(自定义错误)

  • 开发者可以创建自己的错误类型,继承自 Error 类。
  • 例如:class MyError extends Error { constructor(message) { super(message); this.name = "MyError"; } }

异常处理

在JavaScript中,可以使用 try...catch 语句来捕获和处理异常:

try {
    // 可能抛出异常的代码
    throw new TypeError("这是一个类型错误");
} catch (error) {
    // 处理异常的代码
    console.error(error.message);
}

了解这些常见的异常类型有助于更好地调试和编写健壮的JavaScript代码。

0