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;
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)));
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);
Akhir sekali, kita boleh menggabungkan objek unik daripada kedua-dua tatasusunan menjadi satu hasil:
const result = [...onlyInA, ...onlyInB];
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!