promise的async/await
async/await是es7推出的一套關於非同步的終極解決方案,為什麼要說他是終極解決方案呢?因為他實在是太好用了,而且寫起來還非常的簡單。
什麼是async/await呢?可以總結為一句話:async/await是一對好**,缺一不可,他們的出生是為promise服務的。可以說async/await是promise的進化版。
這兩個**必須同時出現,缺一不可語法:
1
async
function
(function
return promise)
函式返回promise物件
promise物件的結果由async函式執行的返回值決定
2await
expression
(value or promise)
expression一般是promise物件,也可以是其他值
如果是promise物件,await返回的是promise成功的值
如果是其他值,直接將此值作為await的返回值
3await必須寫在async中,但async可以沒有await
如果await的promise失敗,就會丟擲異常,需通過try…catch…捕獲處理
注:await右側表示式為promise,得到的結果就是promise成功的value
注:await右側表示式不為promise,得到的結果就是它本身
function
set1()
,3000)}
)}function
set2()
,2000)}
)}async
function
fn1(
)fn1()
;------
----
----
----
----
----
----
----
----
----
----
----
----
// 錯誤處理 - try catch
async
function
fn5(
)catch
(error)
}fn5
()
async的非同步使用es7
關於非同步的問題,一直很受關注,es7中的async.await也是針對非同步問題的。需求 我想使用promise,和async這兩種方法,在一定時間之後輸出乙個 hellow world 使用promise 使用async進行操作 值得說一句的是await後面通常是乙個promise物件 func...
ES7中的非同步async和非同步等待await
非同步async和非同步等待await是什麼?非同步async做為乙個程式猿大家一般都接觸過,知道是什麼意思。而在這裡async主要是用於申請乙個function函式是非同步的!非同步等待await是 async wait 的簡寫,await 只能出現在 async 函式中,一定要注意不能直接呼叫。...
ES7 學習筆記
es7只有2個特性 他是乙個替代indexof 開發人員用來檢查某個字在陣列中是否存在的。indexof 驗證陣列中是否存在某個元素,這時需要根據返回值是否為 1來判斷。includes 驗證陣列中是否存在某個元素,這樣更加直觀簡單,直接返回 true 或 false。let arr react a...