首页 > 解决方案 > 将多个数组合并为一个数组

问题描述

我怎样才能将这个产生一个数组 forEach 的合并转换为最后一个数组?

affProd.pipe(mergeMap(
          event1 => {
            return fireProd.pipe(
              map(event2 => {
                const finalArray = [{}];
                event1.forEach((e1) =>
                event2.forEach((e2) => {
                // console.log(e1);
                  if (e1.upc.toString() === e2.affiliateUpc.toString()) {
                    this.merge2 = [{ ...e1, ...e2 }];
                  } else {
                    // return console.log('No Data');
                  }
                })
              );
              } ));
            }
        )).subscribe((x) => console.log(x));

上面的输出

在此处输入图像描述

标签: javascriptangular

解决方案


所以我已经回答了我的一个问题。这里的目标是将两个对象合并到一个数组中。我从两个不同的 API 调用了两个对象。我想将这些合并到一个对象中,并将多个合并的对象推送到一个数组中。

这是使用 ... 和括号完成的。

const finalArray = [];
return finalArray.push({...e1, ...e2});

我从来没有使用过合并命令来做到这一点。


推荐阅读