Async/await 真的很方便,但我想要他们的行为相反。除非我手动要求它们等待承诺,否则其他函数不会继续运行,而是希望函数产生,除非我手动指定它们继续并行运行。
例如,此代码将打印出1 3 2
:
function wait(ms) {
return new Promise(r => setTimeout(r, ms));
}
async function a() {
console.log("1");
await wait(5000);
console.log("2");
}
a();
console.log("3");
我希望它打印出来1 2 3
,a()
直到我等了 5 秒并且打印了 2 才真正返回功能。我正在做一个我更喜欢轻量级的扩展,所以我宁愿不使用 3rd 方库。
有没有办法做到这一点?