JavaScript 中的事件处理:我应该如何处理来自 DOM 事件的错误?

Event handling in JavaScript: how should I handle errors from DOM events?

我有以下代码:

const button = document.querySelector("button");

button.addEventListener("click", function() {
  throw Error("Can't touch this button!");
});

这里我们一点击按钮就抛出异常。我们如何抓住它?很明显这个模式不行

const button = document.querySelector("button");

try {
  button.addEventListener("click", function() {
    throw Error("Can't touch this button!");
  });
} catch (error) {
  console.error(error.message);
}

我想知道在浏览器环境中处理此类错误的常见方法是什么?

在浏览器上下文中,您可以为 window 上的 error 事件注册处理程序:

window.onerror = function (e) {
    console.log("custom error handler kicked in");
    return true; // Prevent default error handler
};

重要的是此代码本身不会触发错误,否则将再次调用处理程序...