欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

async await 處理異步變同步(微信小程序內(nèi)舉例) - 新聞資訊 - 云南小程序開(kāi)發(fā)|云南軟件開(kāi)發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開(kāi)發(fā)/軟件開(kāi)發(fā)

知識(shí)

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X(jué)表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷(xiāo)的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷(xiāo)工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!

您當(dāng)前位置>首頁(yè) » 新聞資訊 » 小程序相關(guān) >

async await 處理異步變同步(微信小程序內(nèi)舉例)

發(fā)表時(shí)間:2021-1-5

發(fā)布人:葵宇科技

瀏覽次數(shù):56

1.async起什么作用?   輸出的是一個(gè)Promise對(duì)象

注:

1)async函數(shù)返回的是一個(gè)Promise對(duì)象。Async函數(shù)(包含函數(shù)語(yǔ)句、函數(shù)表達(dá)式、Lambda表達(dá)式)會(huì)返回一個(gè)Promise對(duì)象,如果在函數(shù)中return一個(gè)直接量,async會(huì)把這個(gè)直接量通過(guò)Promise.resolve()封裝成Promise對(duì)象。

2)async函數(shù)返回的是一個(gè)Promise對(duì)象,所以在最外層不能用await獲取其返回值的情況下,我們當(dāng)然應(yīng)該用原來(lái)的方式:then()鏈來(lái)處理這個(gè)Promise對(duì)象。

如果async函數(shù)沒(méi)有返回值,又該如何?  沒(méi)有返回值就是undefined

總結(jié):async函數(shù) 在沒(méi)有await的情況下執(zhí)行async函數(shù),它會(huì)立即執(zhí)行,并且返回一個(gè)promise對(duì)象,并且絕不會(huì)阻塞后面的語(yǔ)句。

2.await

>await表達(dá)式會(huì)暫停當(dāng)前async function的執(zhí)行,等待Promise處理完成若Promise正常處理,其處理結(jié)果作為await表達(dá)式的值,繼續(xù)執(zhí)行async function。若Promise處理異常(rejected),await表達(dá)式會(huì)把Promise的異常原因拋出。另外,如果await操作符號(hào)的表達(dá)式的值不是一個(gè)Promise,那么該值將被轉(zhuǎn)換為一個(gè)正常處理的Promise。

3.async/await的優(yōu)勢(shì)在于處理then鏈

單一的Promise鏈并不能發(fā)現(xiàn)async/await的優(yōu)勢(shì),但是,如果需要處理由多個(gè)Promise組成的then鏈的時(shí)候,優(yōu)勢(shì)就能體現(xiàn)出來(lái)了(Promise通過(guò)then鏈來(lái)解決多層回調(diào)的問(wèn)題,現(xiàn)在又用async/await來(lái)進(jìn)一步優(yōu)化它)

舉例使用:(微信小程序中wepy框架)

異步變同步使用。

結(jié)果:先執(zhí)行的do1,等do1完全執(zhí)行結(jié)束 然后是do2,最后是do3

相關(guān)案例查看更多