Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Nối hai mảng đối tượng và xóa dữ liệu trùng lặp từ một thuộc tính trong JavaScript

Để làm điều này, hãy sử dụng map() cùng với find(). Dưới đây là mã:

Ví dụ

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)

Để chạy chương trình trên, bạn cần sử dụng lệnh sau:

node fileName.js

Tên tệp của tôi là demo183.js.

Kết quả

Chương trình sẽ cho ra kết quả sau:

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