在 for 循环里面,通过 mongoose 异步获取数据,如何让所有异步方法结束后,执行后面命令。
伪代码如下:
function getData (list) {
let result = []
list.forEach((item) => {
if (item.type === 1) {
//异步任务
result.push(x)
} elseif (item.type === 2) {
//异步任务
result.push(y)
} else {
//异步任务
result.push(z)
}
})
return result
}
function main () {
// 若干代码
let result = getData (list)
}
执行后 result 数据一致是空,主要是异步任务还没执行完导致,这种问题如果解决?
async/await 了解一下