all方法 手写promise_promise.all的实现
生活随笔
收集整理的這篇文章主要介紹了
all方法 手写promise_promise.all的实现
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
今天自己來實現(xiàn)一下promise.all方法的實現(xiàn);
先來看MDN官網(wǎng)對promise.all方法的介紹:
簡單理解,當(dāng)參數(shù)中的promise有一個失敗了就直接返回失敗的結(jié)果,返回第一個失敗的結(jié)果,都成功返回所有的參數(shù)結(jié)果;
上代碼:
function promiseAll(promises){// 返回一個promise實例return new Promise((resolve, reject) => {// 做一個判斷參數(shù)是否是數(shù)組if(!Array.isArray(promises)){return reject(new TypeError('arguments must be Array'))}let count = 0,newValues = new Array(promise.length) // 接收新的結(jié)果參數(shù) 建立一個偽數(shù)組for(let i = 0; i < promises.length; i++){ // 運用promise特性 只會有一個狀態(tài)Promise.resolve(promises[i]).then(res = > {count+ 創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的all方法 手写promise_promise.all的实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安装python时需要勾选_一体化污水处
- 下一篇: oracle数据分布不均,oracle性