Promise
ES6 Promise的兼容实现,并进行了扩展。
Promise ( executor )
参数:
- executorFunction(resolve,reject)
- 执行函数。
then ( onFulfilled , onRejected )
指定当前promise被解决后的操作。
参数:
- onFulfilledFunction(value)
- 当前promise被满足后调用的函数。
- onRejectedFunction(reason)
- 当前promise被拒绝后调用的函数。
返回值:
Promise以回调函数返回值解决的promise。
spread ( onFulfilled )
指定当前promise被满足后的操作,数组值会展开为回调函数的参数。
参数:
- onFulfilledFunction(values*)
- 当前promise被满足后调用的函数。
返回值:
Promise以回调函数返回值解决的promise。
catch ( onRejected )
指定当前promise被拒绝后执行的操作。
参数:
- onRejectedFunction(reason)
- 当前promise被拒绝后调用的函数。
返回值:
Promise以回调函数返回值解决的promise。
finally ( handler )
指定当前promise状态确定(无论被解决还是被拒绝)后执行的操作。
参数:
- handlerFunction
- 状态确定后执行的函数。
返回值:
Promise与当前promise状态相同的新promise。
all ( promises )
返回一个表示所有指定promise解决结果的promise。
参数:
- promisesArray<Promise>
- 指定promise。
返回值:
Promisepromise。
race ( promises )
返回一个promise,这个promise在任意一个指定promise被解决后,立刻以相同的状态被解决。
参数:
- promisesArray<Promise>
- 指定promise。
返回值:
Promisepromise。
resolve ( value )
返回一个以指定值解决的promise。
参数:
- valueAny
- 指定值。可以是定值、promise或者thenable。
返回值:
Promise以指定值解决的promise。
reject ( reason )
返回一个以指定原因拒绝的promise。
参数:
- reasonAny
- 拒绝原因。
返回值:
Promise以指定原因拒绝的promise。
series ( creators )
按顺序执行指定promise。
参数:
- creatorsArray<Function(value):Promise>
- 返回promise实例的函数数组。 函数的参数为上一个promise的值。
返回值:
Promise如果执行过程中出现拒绝状态,则返回以该状态解决的promise; 否则返回以最后一个promise的值解决的promise。
delay ( ms )
返回在指定时间后解决的promise。
参数:
- msNumber
- 延迟时间(毫秒)。
返回值:
指定时间后解决的promise。