我知道之前可能已经问过这个问题,但我找不到:
我知道您可以使用扩展功能来检测JS错误,但有没有办法使用JavaScript检测所有错误并在有错误时显示警告?
答案 0 :(得分:22)
在浏览器中定义window.onerror
功能。在使用uncaughtException
附加到process.on()
事件的节点中。
如果需要捕获所有错误,例如在规范转换器或console.log / debugging实现中,则应该仅。否则,你将发现自己处于一个伤害的世界,试图追查奇怪的行为。正如有几个人建议的那样,在正常的日常代码中,try / catch
块是处理错误/异常的正确和最佳方式。
有关前一种情况的参考,请参阅this (about window.error in browsers)和this (about uncaughtException in node)。例子:
window.onerror = function(error) {
// do something clever here
alert(error); // do NOT do this for real!
};
process.on('uncaughtException', function(error) {
// do something clever here
alert(error); // do NOT do this for real!
});
答案 1 :(得分:1)
在此处回答:https://stackoverflow.com/a/67394338/11239018
window.onerror = function (msg, url, lineNo, columnNo, error) {
// ... handle error ...
alert(msg + ' - ' + url + ' - ' + lineNo + ' - ' + columnNo);
return false;
}