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()
阅读 2.3k
1 个回答

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题