使用JS检测所有JS错误

时间:2013-12-12 03:24:16

标签: javascript error-handling

我知道之前可能已经问过这个问题,但我找不到:

我知道您可以使用扩展功能来检测JS错误,但有没有办法使用JavaScript检测所有错误并在有错误时显示警告?

2 个答案:

答案 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!
};

Node.js的

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;
    }