ES6 promise 等待多個非同步函式全部完成

2021-09-29 16:48:09 字數 881 閱讀 6889

等待多個非同步函式全部執行完成的函式建立不同於順序執行。

function

fn1(

)起跑。。。`);

settimeout

(function()

到達終點`);

console.

log(

`1號開啟了門`);

door

(demo);}

,3000);

})}function

fn2(

)起跑。。。`);

settimeout((

)=>

到達了終點`);

console.

log(

`2號開啟了門`);

door

(demo);}

,2000);

})}function

fn3(

)起跑。。。`);

settimeout((

)=>

到達終點`);

console.

log(

`3號開啟了門`);

door

(demo);}

,5000);

})}

呼叫:

//呼叫: 

promise.

all(

[fn1()

,fn2()

,fn3()

]).then

(arr=>

);

這裡的arr陣列儲存了promise.all中所有非同步函式通過door()返回的執行結果。

注意:arr中返回值儲存的順序和非同步函式執行完成的順序無關。只和呼叫順序有關。

ES6 Promise基本用法

1 promise是什麼 promise是非同步程式設計的一種解決方案,在es6中promise被列為了正式規範,統一了用法,原生提供了promise物件。2 基礎用法 resolve代表成功 reject失敗 都是乙個函式 let p new promise function reslove,re...

ES6 Promise使用介紹

1 什麼是promise promise 是非同步程式設計的一種解決方案,比傳統的解決方案 函式和事件 更合理和更強大。這麼說可能不夠直觀的理解,看下面的兩個例子 callback 函式 function getcallback n,callback 2000 getcallback 3,funct...

ES6 promise簡單實現

從promise的概念和使用分析 一句話 利用3個狀態,當執行一次後狀態改變同時執行then中當所有事件 狀態改變後,不會在執行 1.建構函式 2.3個狀態 pending,fulfilled,rejected,狀態一旦確定為fulfilled,rejected就不會在更改 3.引數是函式,prom...