91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在JS循環中使用async/await的方法

發布時間:2020-09-28 23:31:38 來源:腳本之家 閱讀:286 作者:mrr 欄目:web開發

async / await是ES7的重要特性之一,也是目前社區里公認的優秀異步解決方案。目前,async / await這個特性已經是stage 3的建議,可以看看TC39的進度,本篇文章將分享在JS循環中使用async/await的方法.

在開發maty.js時,遇到一個數組任務,數組項是內部異步執行的函數,期望是同步依次執行每項函數,每項函數執行完本身的異步任務后,繼續下一項。

剛開始單純使用map來循環執行,并且await每項函數。如下所示:

starters.map(async (fn, i)=> {
 console.log('++++++++++: ', i)
 await fn(ctx);
});

結果是依次先輸出了索引i,而不是阻塞每次循環,按期望執行。

搬出Google大法,可以看出對在 for…of 循環語法中使用await是有效的。

for (const fn of starters) {
 await fn(ctx);
}

同時文章中指出使用Promise.all,是無法解決當前問題的,因為all方法是并行運行的。很奇怪為什么沒有串行執行的原生方法。

總結

以上所述是小編給大家介紹的在JS循環中使用async/await的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

运城市| 海门市| 报价| 武定县| 渝中区| 慈溪市| 宣城市| 启东市| 武山县| 寿光市| 建瓯市| 晋城| 普兰县| 乐平市| 弥渡县| 肇州县| 柳江县| 清原| 铜山县| 武宣县| 彰化县| 阿巴嘎旗| 定日县| 离岛区| 遵义县| 乌恰县| 玉田县| 海门市| 保定市| 新竹县| 邻水| 内乡县| 莱州市| 新巴尔虎右旗| 唐山市| 中卫市| 永善县| 上犹县| 乌苏市| 新兴县| 巴彦淖尔市|