Rumah >hujung hadapan web >tutorial js >Bagaimana untuk mengalih keluar Objek Duplikat daripada Array dalam JavaScript?

Bagaimana untuk mengalih keluar Objek Duplikat daripada Array dalam JavaScript?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-27 20:17:10292semak imbas

How to Remove Duplicate Objects from an Array in 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:

  • penapis: Mengalih keluar objek pendua yang memenuhi kriteria yang diberikan.
  • findIndex: Mengembalikan indeks kejadian pertama objek yang sepadan dengan kriteria yang ditentukan.

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!

Kenyataan:
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