小编Geo*_*rge的帖子

如果javascript“async”函数的主体中没有“await”,它是否会以任何不同的方式执行?

来自 MDN

异步函数通过事件循环以与其余代码不同的顺序运行,

但是,我不明白这对于一个不显式返回任何内容并且根本不使用 await 的简单函数意味着什么。在这种情况下声明一个函数 async 有什么用吗?它是否会在稍后执行以允许页面响应,例如在执行时?我的测试表明它是同步执行的,根本没有延迟:

async function foo() {
  console.log('Start heavy stuff');
  for (let i = 0; i < 90000000; ++i) {
    Math.random()
  }
  console.log('Fnish heavy stuff')
}

foo();
console.log('All done, synchronously');
Run Code Online (Sandbox Code Playgroud)

日志按预期顺序显示,那么在这种情况下可以使用使此函数异步吗?这与使用 调用此函数有任何相似之处setTimeout(foo, 0)吗?

javascript event-loop async-await

4
推荐指数
1
解决办法
123
查看次数

标签 统计

async-await ×1

event-loop ×1

javascript ×1