学习记录:
错误处理
在执行代码的时候会出现问题,他有两种可能:
一种就是程序的逻辑有问题,执行代码异常,
另一种就是程序可能遇到无法预测的异常情况而报错,例如,网络连接中断,读取不存在的文件,没有操作权限等。
对于第二种错误,我们必须处理它,并且需要给用户进行反馈。
在javascript中,我们使用try...catch...finally进行错误处理。
var r1, r2, s = null;
try {
r1 = s.length; // 此处应产生错误
r2 = 100; // 该语句不会执行
} catch (e) {
alert('出错了:' + e);
} finally {
console.log('finally');
}
console.log('r1 = ' + r1); // r1应为undefined
console.log('r2 = ' + r2); // r2应为undefined
也就是说,整个执行流程:
1.首先执行try..;
2.执行到语句出错时,后续语句不再执行,而去执行catch(e)...代码。
3.然后执行finally...代码。
错误类型:
Js中用Error对象表示错误,还有从Error派生的TypeError,ReferenceError等错误对象。我们一般都用Catch(e)来捕获变量e的访问错误对象。
抛出错误:
程序可以直接抛出一个错误,让执行直接跳转到catch快。抛出的错误使用throw语句。
当我们编写程序时,因为catch到错误却什么都不干,所以我们必须编写错误的处理语句。
网友评论