Javascript React基于另外两个具有相同键名的数组生成新数组

Javascript React基于另外两个具有相同键名的数组生成新数组,javascript,reactjs,Javascript,Reactjs,如果我有这两个数组: 阵列1: 阵列2: 嗯。所以现在我需要数组1中的名称显示为:项目1和项目2,没有项目3,因为该项目没有购买的数据。所以我需要一个新的数组,如下所示: [ { _id: 56s565ss2s2s2s4s5, name: item1 }, { _id: 56s565ss2s2s2a52a52, name: item2 }, ] arr1.filter(({name: name1}) => arr2.some(({name:

如果我有这两个数组:

阵列1:

阵列2:

嗯。所以现在我需要数组1中的名称显示为:项目1和项目2,没有项目3,因为该项目没有购买的数据。所以我需要一个新的数组,如下所示:

[
  {
    _id: 56s565ss2s2s2s4s5,
    name: item1
  },
  {
    _id: 56s565ss2s2s2a52a52,
    name: item2
  },
]
arr1.filter(({name: name1}) => arr2.some(({name: name2}) => name1 === name2));
我从mongodb中提取数据,然后将它们与组件中的map一起使用,从而获得这两个数组。
那么我如何才能做到这一点呢?

我想你在寻找这样的东西:

[
  {
    _id: 56s565ss2s2s2s4s5,
    name: item1
  },
  {
    _id: 56s565ss2s2s2a52a52,
    name: item2
  },
]
arr1.filter(({name: name1}) => arr2.some(({name: name2}) => name1 === name2));
对于您的数据,这将为您提供如下输出:

[
  { _id: '56s565ss2s2s2s4s5', name: 'item1' },
  { _id: '56s565ss2s2s2a52a52', name: 'item2' }
]

你已经尝试过什么,你能证明吗?所以你基本上想根据array2的内容过滤array1,对吗?如果你想过滤,为什么不使用filter?那些id值很难查看->向下投票,因为你没有尝试自己解决问题,我一直在使用map。所以首先:array1.mapitem=>{array2.mapitm{ifitem.name==itm.name{{{itm.name}{itm.bunded}}}},但这并不能解决我的问题。因为它多次显示我Item1 Item2。。。我只想为项目1和项目2命名两个div。在同一个div中,您应该在列表中购买值。您应该制作一个可运行的代码段,它将更好地说明结果。我通常会这样做,但输入太长了。