Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Menggabungkan Dua Tatasusunan Objek Dengan Cekap Berdasarkan Kunci Sepunya?

Bagaimanakah Saya Boleh Menggabungkan Dua Tatasusunan Objek Dengan Cekap Berdasarkan Kunci Sepunya?

Mary-Kate Olsen
Lepaskan: 2024-12-07 09:14:16
asal
328 orang telah melayarinya

How Can I Efficiently Merge Two Arrays of Objects Based on a Common Key?

Menggabungkan Tatasusunan Objek dengan Kunci Sepunya

Pertimbangkan dua tatasusunan objek:

Array 1:
[
  { id: "abdc4051", date: "2017-01-24" },
  { id: "abdc4052", date: "2017-01-22" }
]
Salin selepas log masuk
Array 2:
[
  { id: "abdc4051", name: "ab" },
  { id: "abdc4052", name: "abc" }
]
Salin selepas log masuk

Untuk menggabungkan tatasusunan ini berdasarkan sifat id, penyelesaian ringkas adalah untuk memanfaatkan fungsi map() dan Object.assign().

Menggunakan map(), kami melelar melalui Array 1. Untuk setiap objek, kami mencipta objek baharu yang menggabungkan sifat kedua-dua objek pada indeks yang sama dalam Array 1 dan Array 2. Objek baharu ini disimpan dalam arr3.

let arr1 = [
  { id: "abdc4051", date: "2017-01-24" },
  { id: "abdc4052", date: "2017-01-22" }
];

let arr2 = [
  { id: "abdc4051", name: "ab" },
  { id: "abdc4052", name: "abc" }
];

let arr3 = arr1.map((item, i) => Object.assign({}, item, arr2[i]));

console.log(arr3);
Salin selepas log masuk

Ini mencapai hasil yang diingini:

[
  { id: "abdc4051", date: "2017-01-24", name: "ab" },
  { id: "abdc4052", date: "2017-01-22", name: "abc" }
]
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggabungkan Dua Tatasusunan Objek Dengan Cekap Berdasarkan Kunci Sepunya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan