PromiseRejectionEvent 接口表示出现在JavaScript Promises 被rejecte (拒绝) 时触发的事件。这些事件对遥测(远程测试)和调试特别的有用。
构造函数
PromiseRejectionEvent()- 用给定的参数生成一个
PromiseRejectionEvent事件。
属性
也从它的父级Event继承属性。
PromiseRejectionEvent.promise只读- 被 rejected 的 JavaScript
Promise。 PromiseRejectionEvent.reason只读- 一个值或
Object表明为什么 promise 被 rejected,并传递给Promise.reject()。
方法
没有特定的方法; 从它的父级 Event继承方法。
事件
unhandledrejection- 在一个JavaScript
Promise被 reject(拒绝) 时触发,但是没有 reject 处理函数来处理 reject(拒绝)。 rejectionhandled- 在一个JavaScript
Promise被 reject 时触发,在 reject 后由promise的 reject 处理函数处理。
例子
window.onunhandledrejection = function(e) {
console.log(e.reason);
}
规范
| Specification | Status | Comment |
|---|---|---|
| WHATWG HTML Living Standard PromiseRejectionEvent |
Living Standard | Initial definition. |
浏览器兼容性
| 功能 | 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 启用为真。