用 JavaScript 将两个由对象组成的数组串联起来,并从其中一个属性中删除重复数据?


为此,请将 map() 与 find() 搭配使用。以下为代码 −

范例

var details1 =
[
   {
      productDetails:
      {
         isSold: true,
         productId:101
      }
   },
   {
      productDetails:
      {
         isSold: true,
         productId:103
      }
   }
]
var details2 =
[
   {
      productDetails:
      {
         isSold: false,
         productId:101
      }
   }
]
var details3 = details1.map(details1Object=>{
   var newObject= details2.find(obj=>obj.productDetails.productId
   === details1Object.productDetails.productId)
   return newObject? newObject : details1Object
})
console.log(details3)

要运行以上程序,你需要使用以下命令 −

node fileName.js.

此处,我的文件名是 demo183.js。

输出

这将产生以下输出 −

PS C:\Users\Amit\javascript-code> node demo183.js
[
   { productDetails: { isSold: false, productId: 101 } },
   { productDetails: { isSold: true, productId: 103 } }
]

更新时间: 2020-09-14

187 次浏览

开启你的 职业生涯

完成课程获取认证

开始
广告