异常处理
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语句时,调试器会暂停执行,并允许开发人员检查代码的状态和变量的值。