注:只有异步操做的结果能够决定当前状态数组
注:状态一旦改变,就不会再变,而且任什么时候候均可以获得这个结果promise
1、Promise构造函数:Promise(excutor){}异步
Ø excutor函数:同步执行(resolve,reject)\=>{} Ø resolve函数:内部定义成功时调用的函数value=>{} Ø reject函数:内部定义失败时调用的函数reason=>{} excutor会在Promise内部当即同步回调,异步操做在执行器中执行
2、Promise.prototype.then方法:(onResolved,onRejected)=>{}函数
Ø onResolved函数:成功的回调函数(value)=>{},必需 Ø onRejected函数:失败的回调函数(reason)=>{},可选 指定用于获得成功value的成功回调和用于获得失败reason的失败回调返回一个新的Promise对象
3、Promise.prototype.catch方法:(onRejected)=>{}prototype
Ø onRejected函数:失败的回调函数(reason)=>{} then()的语法糖,至关于then(undefined,onRejected)
4、Promise.resolve方法:(value)=>{}code
Ø value:成功的数据或promise对象 返回一个成功的promise对象
5、Promise.reject方法:(reason)=>{}对象
Ø reason:失败的缘由 返回一个失败的promise对象
6、Promise.all方法:(promises)=>{}回调函数
Ø promises:包含n个promises的数组 返回一个新的promise,只有全部的promise都成功才是成功状态
7、Promise.race方法:(promises)=>{}同步
Ø promises:包含n个promises的数组 返回一个新的promise,第一个完成的promise的结果状态就是最终的结果状态