第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Async/Await 如何實(shí)現(xiàn)各自執(zhí)行

Async/Await 如何實(shí)現(xiàn)各自執(zhí)行

犯罪嫌疑人X 2018-12-17 09:47:58
function getTimeOut1() {    return new Promise((resolve, reject) => {         setTimeout(() => {             resolve('===5000ms===');         }, 5000);     }); }function getTimeOut2() {    return new Promise((resolve, reject) => {         setTimeout(() => {             resolve('===2000ms===');         }, 2000);     }); }如何用async/await實(shí)現(xiàn)這種(分頭執(zhí)行)的效果:getTimeOut1().then(res => {    console.log(res); }); getTimeOut2().then(res => {    console.log(res); });普通的await會(huì)等a的返回結(jié)果出來(lái)再執(zhí)行b ---> 8000ms+const a = await getTimeOut1();const b = await getTimeOut2();用Promise.all([...p])的形式,雖然是并行操作,但會(huì)等最慢的一次執(zhí)行完才會(huì)返回結(jié)果。---> 5000ms+所以沒(méi)有想明白如何用async/await實(shí)現(xiàn)常規(guī)的并行回調(diào)。
查看完整描述

1 回答

?
交互式愛(ài)情

TA貢獻(xiàn)1712條經(jīng)驗(yàn) 獲得超3個(gè)贊

async function logInOrder(urls) {  // 并發(fā)讀取遠(yuǎn)程URL
  const textPromises = urls.map(async url => {    const response = await fetch(url);    return response.text();
  });  // 按次序輸出
  for (const textPromise of textPromises) {    console.log(await textPromise);
  }
}

上面代碼中,雖然map方法的參數(shù)是async函數(shù),但它是并發(fā)執(zhí)行的,因?yàn)橹挥衋sync函數(shù)內(nèi)部是繼發(fā)執(zhí)行,外部不受影響。后面的for..of循環(huán)內(nèi)部使用了await,因此實(shí)現(xiàn)了按順序輸出。

希望這個(gè)答案可以幫到你,謝謝采納意見(jiàn)!


查看完整回答
反對(duì) 回復(fù) 2018-12-17
  • 1 回答
  • 0 關(guān)注
  • 632 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)