PromiseRejectionEvent

PromiseRejectionEvent 接口表示出现在JavaScript Promises 被rejecte (拒绝) 时触发的事件。这些事件对遥测(远程测试)和调试特别的有用。

构造函数

PromiseRejectionEvent()
用给定的参数生成一个 PromiseRejectionEvent 事件。

属性

也从它的父级Event继承属性。

PromiseRejectionEvent.promise 只读
被 rejected 的 JavaScript Promise
PromiseRejectionEvent.reason (en-US) 只读
一个值或 Object 表明为什么 promise 被 rejected,并传递给Promise.reject()

方法

没有特定的方法; 从它的父级 Event继承方法。

事件

unhandledrejection
在一个JavaScript Promise 被 reject(拒绝) 但是没有 reject 处理函数来处理时触发。
rejectionhandled
在一个JavaScript Promise 被 reject 时触发,在 reject 后由promise的 reject 处理函数处理。 

例子

window.onunhandledrejection = function(e) {
  console.log(e.reason);
}

规范

Specification Status Comment
HTML Living Standard
PromiseRejectionEvent
Living Standard Initial definition.

浏览器兼容性

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help! (en-US)

功能 Chrome Firefox (Gecko) Internet Explorer Opera Safari
基本支持 49 未实现[1] 未实现 未实现 未实现
功能 Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
基本支持 未实现 未实现[1] 未实现 未实现 未实现

[1] 在 Firefox 里,有实现这个接口但是默认是禁用的。要打开它的话,去到about:config 将 dom.promise_rejection_events.enabled 启用为真。

参见