错误处理
- Error对象: 封装了错误信息的对象
- 何时创建: 发生错误时, JS自动创建
- Error子对象:
- ReferenceError: 引用错误, 找不到对象
- SyntaxError: 语法错误
- TypeError: 类型错误, 错误的使用类型或类型的方法
- RangeError: 范围错误, 参数超范围
- EvalError: Eval错误, 错误地使用了eval函数
- URIError: URI错误
- 错误处理: 发生错误时, 保证程序不中断
- 如何进行错误处理: 利用try…catch结构
- 错误处理中的return:
- finally中的return, 会替换try…catch中的return
- 若finally中没有return, finally中的代码一定会在return之前执行。但无法影响已确定的return结果。
- 抛出自定义错误: throw new Error(“自定义错误消息”);
- 注意: 如果可以提前预知错误的原因, 建议使用if…else代替try…catch。try中应包含尽量少的代码, 因try的执行效率低, 且多创建了一个Error对象。