有没有办法截获所有JavaScript错误?

有没有办法截获所有JavaScript错误?,javascript,exception,Javascript,Exception,目标:当发生任何JS错误时,从该错误中获取信息并使用它执行自定义函数 说明:如果脚本创建了这样的错误 var a = test; // VM334:1 Uncaught ReferenceError: test is not defined …我如何“拦截”该错误;也许是这样的: Error.onerror = function(e){ alert("The error is " + e ); } // "The error is VM334:1 Uncaugh

目标:当发生任何JS错误时,从该错误中获取信息并使用它执行自定义函数

说明:如果脚本创建了这样的错误

var a = test;
// VM334:1 Uncaught ReferenceError: test is not defined
…我如何“拦截”该错误;也许是这样的:

Error.onerror = function(e){ alert("The error is " + e ); } 
// "The error is VM334:1 Uncaught ReferenceError: test is not defined"
注意: 我知道以下几点:

window.onerror = function(){...}
window.addEventListener('error', ... )
不幸的是,由于我认为与范围有关的原因,这些工作无法完成。我相信许多错误将无法跟踪,因为它们不存在于窗口对象上

try{}catch(e){alert(e)}
也不是一个解决方案,因为它对错误的来源过于详细

我也尝试过覆盖控制台.error,但当页面上出现JS错误时,不会调用此函数

有没有一种方法可以响应任何JS错误


干杯

某些类型的错误无法被javascript捕获。例如,由于无法运行要开始的代码,因此无法捕获语法错误。如果捕获到错误,您将无法获取它们。