Skip to content

异常处理

throw抛出异常,try/catch捕获异常,finally执行清理代码

throw抛出异常

在javascript之中,throw语句用于抛出一个用户自定义的异常。当前函数会立即停止执行,并将控制权转移到最近的控制结构中。

js
throw new Error("错误信息");

throw和throws的区别:

  • throw是用于抛出异常的语句,而throws是用于声明函数可能会抛出异常的语句。
  • throw后面跟的是异常对象,而throws后面跟的是异常类型。
  • throw语句会立即停止当前函数的执行,并将控制权转移到最近的控制结构中。而throws语句只是声明函数可能会抛出异常,并不会立即停止当前函数的执行。
  • throw语句后面可以跟任何类型的异常对象,而throws后面只能跟异常类型。

try/catch捕获异常

try-catch语句用于捕获并处理异常。try块中的代码可能会抛出异常,而catch块中的代码用于处理这些异常。

js
try {
    // 可能出现异常的代码
} catch (err1) {
    // 处理异常的代码
} catch (err2) {
    // 处理异常的代码
} finally {
    // 无论是否出现异常都会执行的代码
}

debugger

debugger语句用于在代码中设置断点,以便在调试器中暂停执行。当代码执行到debugger语句时,调试器会暂停执行,并允许开发人员检查代码的状态和变量的值。

js
function foo() {
    debugger;
    // 其他代码
}
foo();

当执行到debugger语句时,调试器会暂停执行,并允许开发人员检查代码的状态和变量的值。

Released under the MIT License.