ES6 async await基本使用

2021-09-11 18:36:23 字數 654 閱讀 4740

async是非同步程式設計的最新標準,我們來看看async如何使用

async

functionfn(

)console.

log(fn(

));// promise fn(

).then

(res =>

)

async作為關鍵字放在函式前面,讓同步的函式成為非同步函式,不關函式裡返回什麼,列印出還是promise,說明async還是基於promise的,async的非同步方式還是比promise更加簡單優雅的。

// 這裡模擬乙個耗時操作

function

asyncfunc()

,1000);

})}async

functionfn(

)fn()

一秒後列印出了100,async和await搭配使用,await可以接收非同步函式,整個過程看上去有點像同步**,但其實是非同步操作。

我們在fn()上加上一行**

async

functionfn(

)

執行上面**看到兩次都是在暫停一秒列印出來的,這說明await的後面如果是promise(耗時操作),它會阻塞整個函式,下面的**不會執行。

簡單理解ES6的async await

以前專案中為了能較為優美 簡潔地處理多個非同步事件使用es6的async與await語法糖,但對其並未有深入的理解。現粗略了解與整理了一下,再次寫下大概的理解 1.async可以看做宣告並返回了promise物件 2.await相當於定義promise內的方法,必須在async中使用 3.當awai...

es6讀書筆記 六 async await

雲開發中async await這兄弟倆也經常亮相,初識也確實不知道幹啥,但是你真正到了實際的業務場景中就比較好理解,async表示非同步執行,await表示等待,組合在一起的意思是在非同步執行的方法裡,我們需要等待非同步執行完畢返回結果後再往下執行,給一段示例 async fetchdata if ...

使用ES6新特性async await進行非同步處理

我們往往在專案中會遇到這樣的業務需求,就是首先先進行乙個ajax請求,然後再進行下乙個ajax請求,而下乙個請求需要使用上乙個請求得到的資料,請求少了還好說,如果多了,就要一層一層的巢狀,就好像有點callback的寫法了,那是相當噁心的,下面我就來講一下如何使用es6的新特性async await...