代码是很难真正意义的完全按照开发者的想法运行的,意外情况总是层出不穷,放任不管显然不是一个合格的开发者该做的事情,错误信息该如何进行处理、收集以及分析显得尤为重要,这篇文章就对于这部分内容进行讨论。
那对于前端同学来说,错误往往会阻塞程序运行,并抛出一个错误,给用户极其不好的体验。如果我们可以提前对错误有所准备,将错误捕获做出反应,给用户更好的体验。也可以通过对错误信息的收集和分析,主动的去发现一些潜藏着的代码问题,不用等着用户绕一大个圈子来向你提bug,你就能够第一时间拿到各种信息。
客户端收集
window.onerror
window.onerror会全局的在JavaScript运行时错误、语法错误发生时触发。
window
注意:这里我们可以拿到的是被throw出来,没有被catch过的错误。而不能拿到promise这样的错误。
凡事不会一帆风顺,很多同学再尝试的时候,一定发现了自己只能拿到一个Script error并没有错误本身的message、url等信息,在lineNum和colNum也都是0,并不是真正错误发生时的错误信息。
原因是浏览器在同源策略限制下所产生的。浏览器出于安全