在 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);}