console.log("1");
console.log("2");
async function a() {
for (let i = 0; i < 1000000000; i++) {}
for (let i = 0; i < 1000000000; i++) {}
}
a().then(() => console.log("in then"));
console.log("3!");
Run Code Online (Sandbox Code Playgroud)
我想要的这个输出是这个 1 2 3!在那时
但是 async 函数的行为是同步的,不会让 3! 打印直到长循环执行完毕。我想如果使用 async 关键字,它会在后台运行内部函数吗?我基本上希望 2 个长循环在后台运行。只是想了解异步和等待。谢谢。
编辑:有人能告诉我为什么这也同步工作吗?
console.log("2");
function lag(resolve) {
for (let i = 0; i < 1000000000; i++) {}
for (let i = 0; i < 1000000000; i++) {}
console.log("in lag");
return resolve;
}
async function a() {
// …Run Code Online (Sandbox Code Playgroud)