Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mencari Perbezaan Antara Dua Tatasusunan Objek dalam JavaScript?

Bagaimana untuk Mencari Perbezaan Antara Dua Tatasusunan Objek dalam JavaScript?

Patricia Arquette
Lepaskan: 2024-12-09 12:04:15
asal
275 orang telah melayarinya

How to Find the Differences Between Two Arrays of Objects in JavaScript?

Mencari Perbezaan Antara Tatasusunan Objek dalam JavaScript

Memandangkan dua tatasusunan objek dengan struktur yang serupa, adalah perlu untuk menentukan objek yang adalah unik untuk setiap tatasusunan. Senario ini timbul apabila membandingkan set hasil atau melakukan penyelarasan data. Dalam JavaScript, mencari perbezaan antara tatasusunan objek boleh dicapai melalui gabungan penapisan dan perbandingan.

Untuk mengenal pasti objek unik dalam setiap tatasusunan, kita boleh terlebih dahulu menentukan fungsi perbandingan yang menilai sama ada dua objek adalah setara berdasarkan harta mereka. Sebagai contoh:

const isSameUser = (a, b) => a.value === b.value && a.display === b.display;
Salin selepas log masuk

Seterusnya, kita boleh menggunakan kaedah penapis untuk lelaran melalui satu tatasusunan dan memilih objek yang tidak terdapat dalam tatasusunan yang lain, mengikut fungsi perbandingan.

const onlyInLeft = (left, right, compareFunction) =>
  left.filter(leftValue => !right.some(rightValue => compareFunction(leftValue, rightValue)));
Salin selepas log masuk

Dengan menggunakan teknik ini pada kedua-dua tatasusunan, kita boleh mendapatkan dua tatasusunan yang mengandungi objek unik untuk setiap:

const onlyInA = onlyInLeft(a, b, isSameUser);
const onlyInB = onlyInLeft(b, a, isSameUser);
Salin selepas log masuk

Akhir sekali, kita boleh menggabungkan objek unik daripada kedua-dua tatasusunan menjadi satu hasil:

const result = [...onlyInA, ...onlyInB];
Salin selepas log masuk

Susun atur hasil yang terhasil akan mengandungi objek yang unik kepada kedua-dua tatasusunan , memberikan gambaran menyeluruh tentang perbezaan antara mereka.

Atas ialah kandungan terperinci Bagaimana untuk Mencari Perbezaan Antara Dua Tatasusunan Objek dalam JavaScript?. 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