異步編程: 一次性搞懂 Promise, async, await (#js #
2023-06-18 22:20 作者:取昵稱(chēng)重名好煩啊 | 我要投稿

?
01:07
?1)回調(diào)函數(shù)(callback function)

JS天生是單線程編程語(yǔ)言,單線程異步方式無(wú)需考慮線程同步和資源競(jìng)爭(zhēng)的問(wèn)題,避免線程頻繁切換造成的計(jì)算機(jī)開(kāi)銷(xiāo)。
但缺點(diǎn)是會(huì)造成頻繁的嵌套,即回調(diào)地獄:

Promise正是為了解決回調(diào)地獄誕生的,比如js中promise的一個(gè)api:fetch,用鏈?zhǔn)秸{(diào)用代替回調(diào)地獄


?
04:21
?async/await:基于promise的語(yǔ)法糖
?
05:19
?①打破兩個(gè)fetch的并行 ---->promise.all
②不能直接調(diào)用forEach和map方法 ----> 用傳統(tǒng)for循環(huán)
③只能用在異步函數(shù)中
標(biāo)簽: