Promise.reject()

该新特性属于 ECMAScript 2015(ES6)规范,在使用时请注意浏览器兼容性。

概述

Promise.reject(reason)方法返回一个用reason拒绝的Promise。

语法

Promise.reject(reason);

Parameters

reason
Promise被拒绝的原因。

描述

静态函数Promise.reject返回一个被拒绝的Promise。使用是Error实例的reason对调试和选择性错误捕捉很有帮助

示例

使用静态Promise.reject方法

Promise.reject("Testing static reject").then(function(reason) {
  // 未被调用
}, function(reason) {
  console.log(reason); // "测试静态拒绝"
});

Promise.reject(new Error("fail")).then(function(error) {
  // 未被调用
}, function(error) {
  console.log(error); // 堆栈跟踪
});

规范

规范 状态 备注
domenic/promises-unwrapping 草稿 标准化工作在这里进行中
ECMAScript 2015 (6th Edition, ECMA-262)
Promise.reject
Standard ECMA规范的首次定义

浏览器兼容性

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 32 24.0 (24.0) as Future
25.0 (25.0) as Promise behind a flag[1]
29.0 (29.0) by default
未实现 19 7.1
Feature Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile Chrome for Android
Basic support 未实现 24.0 (24.0) as Future
25.0 (25.0) as Promise behind a flag[1]
29.0 (29.0) by default
未实现 未实现 iOS 8 32

[1] Gecko 24实验性地实施了Promise类,它最初被命名为Future,在Gecko 25被重新命名为现在的名字, 但在dom.promise.enabled设置中被默认禁用。 Bug 918806 Gecko 29开始默认启用Promise。

参见

文档标签和贡献者

 此页面的贡献者: fskuok
 最后编辑者: fskuok,