Rumah >hujung hadapan web >tutorial js >Bagaimana untuk mengalih keluar Objek Duplikat daripada Array dalam JavaScript?
Cara Menghapuskan Objek Pendua daripada Tatasusunan
Pertanyaan anda berkisar tentang mengalih keluar objek pendua dengan cekap daripada tatasusunan dalam objek. Mari kita terokai beberapa teknik yang berkesan untuk mencapai matlamat ini.
Penyelesaian ES6:
Memperkenalkan sentuhan keanggunan ES6, kita boleh menggunakan penapis dan kaedah findIndex:
obj.arr = obj.arr.filter((value, index, self) => index === self.findIndex((t) => ( t.place === value.place && t.name === value.name )) );
Pendekatan ini memastikan bahawa hanya objek unik kekal dalam tatasusunan.
Penyelesaian Generik:
Untuk penyelesaian yang lebih serba boleh, pertimbangkan:
const uniqueArray = obj.arr.filter((value, index) => { const _value = JSON.stringify(value); return index === obj.arr.findIndex(obj => { return JSON.stringify(obj) === _value; }); });
Kaedah ini menggunakan rentetan JSON untuk membandingkan objek berdasarkan nilai harta mereka.
Berasaskan Harta Penapisan:
Sebagai alternatif, anda boleh menentukan fungsi untuk membandingkan objek mengikut sifat tertentu:
const isPropValuesEqual = (subject, target, propNames) => propNames.every(propName => subject[propName] === target[propName]); const getUniqueItemsByProperties = (items, propNames) => items.filter((item, index, array) => index === array.findIndex(foundItem => isPropValuesEqual(foundItem, item, propNames)) );
Fungsi ini mengembalikan tatasusunan yang mengandungi objek unik berdasarkan sifat yang ditentukan nama.
Penjelasan:
Dengan memanfaatkan teknik ini, anda boleh mengalih keluar objek pendua daripada tatasusunan dengan berkesan, membolehkan anda bekerja dengan set data yang bersih dan ringkas.
Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar Objek Duplikat daripada Array dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!