Skip to content

面试知识归纳:2.10错误监控

错误监控

如何保证产品质量?

前端错误的分类

  • 即时运行错误:代码错误
  • 资源加载错误

错误的捕获方式

捕获即时运行错误:

  • try catch
  • window.onerror(DOM0)
  • window.addEventListener('error', callback) (DOM2)

捕获资源加载错误:(资源加载错误不会冒泡)

  1. object.onerror
  2. performance.getEntries() 所有已加载资源的加载时长,间接拿到没拿到资源的错误
  3. Error事件捕获

延伸:跨域的JS运行错误可以捕获嘛。错误提示是什么,应该怎么处理?

跨域错误可以捕获到。错误提示为 script error,处理方式如下:

  1. 在script标签增加crossorigin属性
  2. 设置JS资源响应头Access-Control-Allow-Origin: *

上报错误的基本原理

  1. 采用Ajax通信的方式上报(能做,但错误监控不这样做)
  2. 利用Image对象上报
js
(new Image()).src = 'http://xxx.com/test?error=oops'

共 20 个模块,1301 篇 Markdown 文档。