//捕获页面的所有报错(Uncaught ReferenceError),跨域脚本的报错信息只会展示Script error
window.onerror = function(){
console.log(arguments);
}
//即使是跨域脚本,若调用console.error也是使用本域的window.console,因此可以拦截,
const nativeConsoleError = window.console.error;
window.console.error = function (...args) {
setTimeout(()=>{ document.querySelector('.dismissButton').click()},100);
args.forEach(item => {
if (item) {
} else {
}
});
nativeConsoleError.apply(this, args);
}
如要拦截跨域脚本的语法错误,需要通过服务端拦截脚本请求通过AST给每个函数加上try catch
捕获页面中全局Javascript异常