async如何使用?

我并没有再reduce的第一个参数中 return 任何值
为什么 _ 变量为什么会等于 Promise { undefined }

async function fn() {
  let docs = [1, 2, 3, 4]
  let a = await docs.reduce(async (_, e) => {
    await _;
    console.log(_) 
    await new Promise((resolve, reject) => {
      setTimeout(() => {
        console.log(e); 
        resolve();
      }, 1000)
    })

  }, undefined);

}
fn()
阅读 744
评论
    1 个回答
    • 2.4k

    没有return等同于return undefined;而async 函数 返回的是一个promise,所以_变量就是Promise<undefined>

      撰写回答

      登录后参与交流、获取后续更新提醒