一、Promise是一个构造函数, 通过new关键字实例化对象
二、基本语法:
var p = new Promise((resolve,reject)=>{});//参数是一个回调函数
三、Promise接受一个函数作为参数
1、在参数函数中接受两个参数
- resolve: 成功函数
- reject: 失败函数
四、promise实例
1、promise实例有两个属性
- state: 状态
- result: 结果
1.1、promise的状态
第一种状态: pending(准备, 待解决, 进行中)
第二种状态: fulfilled(已完成, 成功)
第三种状态: rejected(已拒绝, 失败)
1.2、 promise状态的改变
通过调用resolve()和reject()改变当前promise对象的状态
1.3、示例:
<script> var p = new Promise((resolve,reject)=>{ // resolve(): 调用函数, 使当前promise对象的状态改成fulfilled resolve() }); console.dir(p);//fulfilled </script>
1.4、总结:
1)、resolve(): 调用函数, 使当前promise对象的状态改成fulfilled
2)、reject(): 调用函数, 使当前promise对象的状态改成rejected
3)、promise状态的改变是一次性的,如果调用了resolver()回调函数的方法,那么当前的promise对象的状态始终是fulfilled,不会改变;
五、promise的结果
通过调用resolve, 传递参数, 改变 当前promise对象的结果value值
<script> const p = new Promise((resolve, reject)=> { // 通过调用resolve, 传递参数, 改变 当前promise对象的 结果 resolve('成功的结果') //reject('失败的结果') }); console.dir(p); </script>