JavaScript第十八章 错误处理与调试
2019-11-08 本文已影响0人
27亿光年中的小小尘埃
学会重视错误处理
失败是成功之母,学会接纳错误
try-catch语句(因为浏览器处理不同,可能会发生错误时用)
标准化错误处理,捕捉错误信息
示例:
try{
// 可能会导致错误的代码
} catch(error){
// 在错误发生时怎么处理
} finally {
// 不管怎样都会执行,只要有finally存在,try和catch里面的都会被忽视
}
错误类型
- Error:Error 是基类型
- EvalError:如果没有把 eval()当成函数调用,就会抛出错误
- RangeError:数值超出相应范围时触发
- ReferenceError:在找不到对象的情况下发生,即找不到对象
- SyntaxError:语法错误
- TypeError:在变量中保存着意外的类型时,或者在访问不存在的
方法时,都会导致这种错误。但归根结底还是由于在执行特定于类型的操作
时,变量的类型并不符合要求所致。
抛出错误
- throw:抛出一个错误,错误类型如上所示
示例:
throw new Error("Something bad happened.");
throw 必须与try-catch并用,因为一旦抛出错误程序就会停止
错误(error)事件
只要发生错误就触发
示例:
window.onerror = function(message, url, line){
alert(message);
};
常见的错误类型
- 类型转换错误
- 数据类型错误
- 通信错误
致命错误和非致命错误
应用程序根本无法继续运行,错误明显影响到了用户的主要操作,会导致其他连带错误都为致命错误,其余的都为非致命错误