携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第11天,点击查看活动详情
错误类型
在执行JavaScript代码的时候,有一些情况会发生错误。
- 程序写的逻辑不对,导致代码执行异常
- 执行时,程序遇到无法预测的异常情况而报错,例如,网络连接中断,读取不存在的文件,没有操作权限等
第二种错误,我们需要及时反馈并处理它,这里就需要给用户反馈了。错误处理是程序设计时必须要考虑的问题。 通过错误码返回错误,就需要约定什么是正确的返回值,什么是错误的返回值。
错误处理的方法:try ... catch ... finally
当代码块被try { ... }包裹的时候,就表示这部分代码执行过程中可能会发生错误,一旦发生错误,就不再继续执行后续代码,转而跳到catch块。catch (e) { ... }包裹的代码就是错误处理代码,变量e表示捕获到的错误。最后,无论有没有错误,finally一定会被执行。
有错误发生时,执行流程像这样:
- 先执行
try { ... }的代码 - 执行到出错的语句时,后续语句不再继续执行,转而执行
catch (e) { ... }代码 - 最后执行
finally { ... }代码
没有错误发生时,执行流程像这样:
- 先执行
try { ... }的代码 - 因为没有出错,
catch (e) { ... }代码不会被执行 - 最后执行
finally { ... }代码
学会如何正确抛出错误
程序也可以主动抛出一个错误,让执行流程直接跳转到
catch块。抛出错误使用throw语句
注意:当我们用catch捕获错误时,一定要编写错误处理语句!!!因为catch到错误却什么都不执行,就不知道程序执行过程中到底有没有发生错误了。最好还是抛出一个Error对象。
写在最后
以上习题&笔记从大佬们的论坛学习而来,特感谢大佬们的知识分享~ (学习技术知识,果然要看大佬们的技术博客,大家有好的推荐也欢迎指引我这个小白哈,感恩!)
附上学习链接,感谢廖大神例题及分析参考 :www.liaoxuefeng.com/wiki/102291…