摘要:分鐘讀完以前我們使用。把異步變成了同步。允許同時執(zhí)行所有的異步函數(shù)函數(shù)總耗時為秒的耗時。的錯誤處理在語法中,我們可以使用進行錯誤處理。在中的分支會進入語句。閱讀原文討論地址分鐘學(xué)會的如果你想?yún)⑴c討論,請點擊這里
1 分鐘讀完 JavaScript Async/Await Explained in 10 Minutes
以前我們使用 callback。
后來我們使用 Promise。
現(xiàn)在我們使用 Async/Await。
1、什么是 Async/Await?Async - 定義異步函數(shù)(async function someName(){...})
自動把函數(shù)轉(zhuǎn)換為 Promise
當(dāng)調(diào)用異步函數(shù)時,函數(shù)返回值會被 resolve 處理
異步函數(shù)內(nèi)部可以使用 await
Await - 暫停異步函數(shù)的執(zhí)行 (var result = await someAsyncCall();)
當(dāng)使用在 Promise 前面時,await 等待 Promise 完成,并返回 Promise 的結(jié)果
await 只能和 Promise 一起使用,不能和 callback 一起使用
await 只能用在 async 函數(shù)中
2、Async/Await 是否會取代 Promise不會。
Async/Await 底層依然使用了 Promise。
多個異步函數(shù)同時執(zhí)行時,需要借助 Promise.all
async function getABC() { let A = await getValueA(); // getValueA 花費 2 秒 let B = await getValueB(); // getValueA 花費 4 秒 let C = await getValueC(); // getValueA 花費 3 秒 return A*B*C; }
每次遇到 await 關(guān)鍵字時,Promise 都會停下在,一直到運行結(jié)束,所以總共花費是 2+4+3 = 9 秒。await 把異步變成了同步。
async function getABC() { // Promise.all() 允許同時執(zhí)行所有的異步函數(shù) let results = await Promise.all([ getValueA, getValueB, getValueC ]); return results.reduce((total,value) => total * value); }
函數(shù)總耗時為 4 秒(getValueB 的耗時)。
3、Async/Await 的錯誤處理在 Async/Await 語法中,我們可以使用 try/catch 進行錯誤處理。在 Promise 中的 .catch() 分支會進入 catch 語句。
閱讀原文:JavaScript Async/Await Explained in 10 Minutes
討論地址:10 分鐘學(xué)會 JavaScript 的 Async/Await
如果你想?yún)⑴c討論,請點擊這里
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/89438.html
摘要:的翻譯文檔由的維護很多人說,阮老師已經(jīng)有一本關(guān)于的書了入門,覺得看看這本書就足夠了。前端的異步解決方案之和異步編程模式在前端開發(fā)過程中,顯得越來越重要。為了讓編程更美好,我們就需要引入來降低異步編程的復(fù)雜性。 JavaScript Promise 迷你書(中文版) 超詳細(xì)介紹promise的gitbook,看完再不會promise...... 本書的目的是以目前還在制定中的ECMASc...
摘要:異步過程控制了解異步的意義之后,我們來對比目前主流幾種異步過程控制方法,探討一下異步編程的最佳實踐。結(jié)語希望本文對大家有點幫助,能更深刻的理解異步編程,能寫出更優(yōu)雅更高效的代碼。 同步和異步(Synchronous and Asynchronous) 了解javascript的同學(xué)想必對同步和異步的概念應(yīng)該都很熟悉了,如果還有不熟悉的同學(xué),我這里舉個形象的例子,比如我們早上起床后要干三...
摘要:譯者按技巧雖好重在掌握并使用起來原文譯者為了保證可讀性,本文采用意譯而非直譯。從數(shù)組中移除重復(fù)元素中,有了集合的語法。自從年雙十一正式上線,累計處理了億錯誤事件,得到了金山軟件等眾多知名用戶的認(rèn)可。 譯者按: 技巧雖好、重在掌握并使用起來! 原文: Learn these neat JavaScript tricks in less than 5 minutes 譯者: Funde...
摘要:提供了完整的環(huán)境,并且支持自定義域名指向,動態(tài)計算資源調(diào)整,可以完成各種應(yīng)用的開發(fā)編譯與部署。 react 新特性 react16 Context 算法相關(guān) 圖解排序算法(二)之希爾排序 微信小程序 微信小程序組件化的解決方案移動端尺寸基本知識 瀏覽器 前端必讀:瀏覽器內(nèi)部工作原理瀏覽器緩存原理解讀瀏覽器加載css和js及dom解析之間的關(guān)系瀏覽器緩存 CSS學(xué)習(xí) 移動web開發(fā)布局入...
閱讀 2935·2023-04-25 20:06
閱讀 1556·2021-08-26 14:15
閱讀 2315·2021-08-12 13:27
閱讀 1860·2019-08-30 15:55
閱讀 3547·2019-08-30 13:20
閱讀 2915·2019-08-29 15:12
閱讀 3406·2019-08-29 15:06
閱讀 2963·2019-08-29 14:13