gpt4 book ai didi

javascript - 处理未处理的 promise 拒绝: Difference between onunhandledrejection and unhandledrejection

转载 作者:行者123 更新时间:2023-12-01 01:00:42 25 4
gpt4 key购买 nike

MDN 中,当未处理 Promise 拒绝时会触发两个事件。

它们都有相同的兼容性,所以我想知道 onunhandledrejection 之间有什么区别?和 unhandledrejection

最佳答案

JavaScript 中几乎每个窗口事件监听器都是如此。请参阅下面的按键事件示例:

window.addEventListener("keypress", () => console.log("Key pressed!"));
window.onkeypress = () => console.log("Key pressed!");

将 EventListener 附加到窗口元素的两种方法之间的主要区别是:

  • 使用“addEventListener()”方法,您可以将多个事件监听器函数订阅到单个事件。
  • 使用“window.onunhandledrejection”属性,您只能向该属性分配一个函数,该函数将在同一事件上触发。因此,如果您稍后将另一个函数分配给该属性,它将覆盖您的初始分配。

示例:

window.addEventListener("keypress", () => console.log("Key pressed! Listener 1"));
window.addEventListener("keypress", () => console.log("Key pressed! Listener 2"));
window.onkeypress = () => console.log("Key pressed! Listener 3");
window.onkeypress = () => console.log("Key pressed! Listener 4");

// If the user presses any key, the Events will be triggered in the order of assignment.
// The console output would be:

// Key pressed! Listener 1
// Key pressed! Listener 2
// Key pressed! Listener 4

还可以看看这个非常详细的answer ,这解释了两种方法的优缺点!

关于javascript - 处理未处理的 promise 拒绝: Difference between onunhandledrejection and unhandledrejection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56108192/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com