当 async/await 遇上 forEach

在 forEach 中使用 async/await 时,异步操作并不会等待前一个操作结束再执行下一个,而是会同时执行多个异步操作,因此输出结果是 undefined。 解决这个问题的方法是,使用 for…of 循环代替 forEach,因为 for…of 循环会等待异步操作执行结束再进行下一次循环。例如:

const array = [1, 2, 3];for (const item of array) {
  const result = await asyncFunc(item);
  console.log(result);}

猜你喜欢

转载自blog.csdn.net/weixin_55109830/article/details/131009344
今日推荐