我想了解unhandledrejection
事件何时被触发。
监听器注册如下:
window.addEventListener('unhandledrejection', event => {
console.log('Triggered');
});
当我执行Promise.reject(42);
时,我看到Triggered
已在控制台中打印,后跟Uncaught (in promise) 42
当我执行Promise.reject(42).then();
时,未触发事件监听器,控制台中仅打印Uncaught (in promise) 42
。
为什么添加空.then()
会导致unhandledrejection
事件未被发布?
在Ubuntu 14.04.5 LTS上的Chrome(62.0.3202.89,64位)中观察到这种情况。