微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

2.6.2 基本用法

ES6 规定,Promise 对象是一个构造函数,用来生成 Promise 实例。

Promise 构造函数接受一个函数作为参数,该函数的两个参数分别是 resolve 和 reject。它们是两个函数,由 JavaScript 引擎提供,不用自己部署。

resolve 函数的作用是将 Promise 对象的状态从“未完成”变为“成功”(即从 pending 变为 resolved ),在异步操作成功时调用,并将异步操作的结果作为参数传递出去。

reject 函数的作用是将 Promise 对象的状态从“未完成”变为“失败”(即从 pending 变为 叫 rejected ), 在异步操作失败时调用,并将异步操作的报错作为参数传递出去。

在 Promise 实例生成以后,可以用 then 方法分别指定 resolved 状态和 叫 rejected 状态的回调函数

then 方法可以接受两个回调函数作为参数。

一个回调函数是在 Promise 对象的状态变为 resolved 时调用,第二个回调函数是在 Promise 对象的状态变在 Promise 对象的状态变为为 rejected 时调用

第二个回调函数是可选的,不一定提供。它们都接受 Promise 对象传出的值作为参数。下面来看一下示例 36 。

示例36

const hzhpromise = new Promise(function(resolve, reject) {
    // ...some code

    if(/* 异步操作成功 */) {
        resolve(value);
    } else {
        reject(error);
}
});
hzhpromise.then(function(value) {
    // success
  }, function(error) {
      //failure
  }
});

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐