我有一个异步循环来检查一个数组,如果找到一个特定值,它将循环另一个数组以匹配所建立的值。
所以我的第一个实现。我打开一个异步循环并从数据库中获取数据
mergedObject = [];
array1.forEach(async (item) => {
if (item.id == 'XXX') {
const dbInfo = await readDB();
数据库信息,我想插入一个数组并构建一个json对象。
dbInfo.forEach(async (itemDB) => {
object.push({
id,
name,
..
..
在循环结束时,我将新对象与“旧”对象合并
mergedObject = _.map(oldObject, (objs) => {
_.assign(objs, _.find(object, {
id: objs.id,
}));
});
我遇到的问题是,在forEach里面我正确地获得了日志。
但是,如果我想在forEach(array1)之外使用mergedObject,则会得到log: []
这是我第一次尝试使用异步。我以前使用过回调。 如何在forEach之外访问mergedObject?