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

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

js控制異步輸出順序

js控制異步輸出順序

哈士奇WWW 2019-08-05 23:02:27
classTest{constructor(){constnums=[1,2,3];(async()=>{for(letiofnums){letx=awaitthis.print(i);console.log(x);}})();}print(x){returnnewPromise((resolve,reject)=>{setTimeout(()=>{resolve(x);},1000);})}}consttest=newTest();(async()=>{letx4=awaittest.print(4);console.log(x4);letx5=awaittest.print(5);console.log(x5);})();怎樣才能做到順序輸出12345?
查看完整描述

2 回答

?
互換的青春

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

Test類增加一個(gè)cprm屬性,用來(lái)接收構(gòu)造函數(shù)里面的異步調(diào)用,值是Promise類型。然后在調(diào)用輸出4之前await這個(gè)cprm屬性,就可以等到構(gòu)造函數(shù)的123都輸出完成后再輸出4。
classTest{
constructor(){
constnums=[1,2,3];
this.cprm=(async()=>{
for(letiofnums){
letx=awaitthis.print(i);
console.log(x);
}
})();
}
print(x){
returnnewPromise((resolve,reject)=>{
setTimeout(()=>{
resolve(x);
},1000);
})
}
}
consttest=newTest();
(async()=>{
awaittest.cprm;
letx4=awaittest.print(4);
console.log(x4);
letx5=awaittest.print(5);
console.log(x5);
})();
                            
查看完整回答
反對(duì) 回復(fù) 2019-08-05
?
蝴蝶刀刀

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

classTest{
constructor(){
constnums=[1,2,3];
this.init=Promise.all(nums.map(asyncn=>console.log(awaitthis.print(n,true))));
}
print(x,isInit=false){
return(isInit?Promise.resolve():this.init).then(()=>newPromise((resolve,reject)=>{
setTimeout(()=>{
resolve(x);
}
,1000);
}
));
}
}
consttest=newTest();
(async()=>{
letx4=awaittest.print(4);
console.log(x4);
letx5=awaittest.print(5);
console.log(x5);
}
)();
}
                            
查看完整回答
反對(duì) 回復(fù) 2019-08-05
  • 2 回答
  • 0 關(guān)注
  • 475 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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