课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
我们在学习软件编程开发的时候除了需要掌握软件框架搭建等方面以外,同时也需要能够顺利处理关于前端开发的一些异常问题,下面我们就一起来了解一下都有哪些常见问题吧。
一、为什么要处理异常?
异常是不可控的,会影响终的呈现结果,但是我们有充分的理由去做这样的事情。
1.增强用户体验;
2.远程定位问题;
3.未雨绸缪,及早发现问题;
4.无法复线问题,尤其是移动端,机型,系统都是问题;
5.完善的前端方案,前端监控系统;
对于JS而言,我们面对的仅仅只是异常,异常的出现不会直接导致JS引擎崩溃,多只会使当前执行的任务终止。
二、需要处理哪些异常?
对于前端来说,我们可做的异常捕获还真不少。总结一下,大概如下:
JS语法错误、代码异常
AJAX请求异常
静态资源加载异常
Promise异常
Iframe异常
跨域Scripterror
崩溃和卡顿
下面我会针对每种具体情况来说明如何处理这些异常。
三、Try-Catch的误区
try-catch只能捕获到同步的运行时错误,对语法和异步错误却无能为力,捕获不到。
四、window.onerror不是万能的
当JS运行时错误发生时,window会触发一个ErrorEvent接口的error事件,并执行window.onerror()。
五、window.addEventListener
当一项资源(如图片或脚本)加载失败,加载资源的元素会触发一个Event接口的error事件,并执行该元素上的onerror()处理函数。这些error事件不会向上冒泡到window,不过(至少在Firefox中)能被单一的window.addEventListener捕获。
六、PromiseCatch
在promise中使用catch可以非常方便的捕获到异步error,这个很简单。
没有写catch的Promise中抛出的错误无法被onerror或try-catch捕获到,所以我们务必要在Promise中不要忘记写catch处理抛出的异常。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。