[转]如何优雅处理前端异常?

·500 Views·

原文链接:http://jartto.wang/2018/11/20/js-exception-handling/index.html

一、为什么要处理异常?

异常是不可控的,会影响最终的呈现结果,但是我们有充分的理由去做这样的事情。

1、增强用户体验;

2、远程定位问题;

3、未雨绸缪,及早发现问题;

4、无法复线问题,尤其是移动端,机型,系统都是问题;

5、完善的前端方案,前端监控系统;

对于 JS 而言,我们面对的仅仅只是异常,异常的出现不会直接导致 JS 引擎崩溃,最多只会使当前执行的任务终止。

二、需要处理哪些异常?

对于前端来说,我们可做的异常捕获还真不少。总结一下,大概如下:

1、JS 语法错误、代码异常

2、AJAX 请求异常

3、静态资源加载异常

4、Promise 异常

5、Iframe 异常

6、跨域 Script error

7、崩溃和卡顿

下面我会针对每种具体情况来说明如何处理这些异常。

.....