ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## Error 对象和try..catch语句 ### Error 对象 Javascript解析或者执行时,一旦发生错误,JavaScript引擎就会抛出一个错误对象。JavaScript原生的提供一个Error构造函数,所有抛出的错误都是这个构造函数的实例。 根据语言标准,Error对象示例必须具有message属性,表示错误出现时的提示信息。对于大部分的Javascript引擎,对Error对象还提供name和stock属性,分别表示错误的名称和错误的堆栈信息,他们是非标准的,不是每一个Error实例都要去实现。 ~~~javascript f2(); function f1() { console.log(abc); } function f2() { f1(); } ~~~ 观察控制台中的错误。 其中:“abc is not defined”是错误提示信息。 最下面的三行错误信息就是堆栈信息。 ### try...catch语句 为了对错误进行处理,我们需要使用try...catch结构。 允许在try...catch块最后定义finally块,表示不管是否出现错误,都必须要在后面运行的语句。 在finally块中一般都是做一些清理的工作。 ~~~javascript function f1() { ;;;;; try { console.log("begin"); console.log(abc); // 一旦出错,Javascript引擎就是构造一个Error对象 } catch(err) { console.log(err.message); } finally { console.log("end"); } ~~~