用 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 次瀏覽

開啟你的 職業生涯

完成課程獲取認證

開始
廣告
© . All rights reserved.