javascript 权威指南中文第6版 14.6 错误处理

window 原生对象提供 onerror 处理函数

1
2
3
4
5
6
window.onerror = function () {
console.log(arguments, 99999)
return true
}

throw new Error ('asdasdas')

输出:

1
2
3
4
5
6
7
8
9
[
"file:///Users/yunggao/Desktop/untitled.html",
82,
9,
Error: asdasdas at file:///Users/yunggao/Desktop/untitled.html:82:9
message: "asdasdas"
stack: "Error: asdasdas↵ at file:///Users/yunggao/Desktop/untitled.html:82:9"
]

该方法可以作为前端代码监控的基础入口。网上查阅相关实践,可能会出现一种跨域的情况:监控 js 作为外链,和应用的项目js处于不同域下,服务端需要添加跨域请求头,js标签添加 crossorigin 属性。查阅文档查看属性配置

https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/script#%E5%B1%9E%E6%80%A7