MST

星途 面试题库

面试题:JavaScript 中 try...catch 如何捕获错误

请解释 JavaScript 中 try...catch 语句的工作原理,并举例说明如何使用它捕获运行时错误。同时,阐述一下在捕获错误后,如何获取错误的详细信息。
21.5万 热度难度
编程语言JavaScript

知识考点

AI 面试

面试题答案

一键面试

try...catch 语句工作原理

try...catch语句用于处理JavaScript代码中的异常(运行时错误)。其工作原理如下:

  1. try:包含可能会抛出异常的代码。JavaScript引擎会尝试执行try块中的代码。
  2. catch:如果try块中的任何代码抛出了异常(通过throw关键字或者由于运行时错误),JavaScript引擎会立即停止执行try块中的剩余代码,并跳转到catch块。catch块接收一个参数,通常命名为error,它包含了关于异常的信息。

捕获运行时错误示例

try {
    // 尝试执行可能出错的代码
    let result = 10 / 0; // 这会抛出一个除零错误
    console.log(result);
} catch (error) {
    // 捕获到错误后执行这里的代码
    console.log('捕获到错误:', error.message);
}

获取错误详细信息

catch块中,通过catch的参数(通常是error)可以获取错误的详细信息。常见的属性有:

  • message:错误的描述信息,如上述示例中的"Division by zero"
  • name:错误类型的名称,例如"SyntaxError""TypeError""ReferenceError"等。

示例:

try {
    let x = JSON.parse('{invalid json');
} catch (error) {
    console.log('错误名称:', error.name);
    console.log('错误信息:', error.message);
}

上述代码中,error.name会是"SyntaxError"error.message会包含类似"Unexpected token i in JSON at position 1"的错误描述。