ต่อไปนี้คือตัวอย่างโค้ดที่สาธิตวิธีการลบรายการที่ซ้ำกันออกจากอาร์เรย์ของออบเจ็กต์:

const originalArray = [
  { id: 1, name: 'Anil' },
  { id: 2, name: 'Anil' },
  { id: 3, name: 'Pankaj' },
  { id: 4, name: 'Pradeep' },
  { id: 5, name: 'Pankaj' }
];

const newArray = originalArray.filter((obj, index, arr) => {
  return arr.map(mapObj => mapObj.name).indexOf(obj.name) === index;
});

console.log(newArray);
// Output: [{ id: 1, name: 'Anil' }, { id: 3, name: 'Pankaj' }, { id: 4, name: 'Pradeep' }]

ในโค้ดนี้ ขั้นแรกเราจะสร้างอาร์เรย์ของอ็อบเจ็กต์ที่มีการซ้ำกันบางส่วน จากนั้น เราใช้เมธอด filter() ในอาร์เรย์นี้เพื่อส่งคืนอาร์เรย์ใหม่ที่มีเฉพาะการเกิดขึ้นครั้งแรกของแต่ละอ็อบเจ็กต์ที่มีคุณสมบัติชื่อเฉพาะ

เราใช้เมธอด map() เพื่อสร้างอาร์เรย์ใหม่ที่มีเฉพาะคุณสมบัติชื่อของแต่ละวัตถุ จากนั้น เราใช้เมธอด indexOf() เพื่อตรวจสอบว่าคุณสมบัติชื่อของวัตถุปัจจุบันเป็นชื่อที่ปรากฏครั้งแรกในอาร์เรย์ใหม่หรือไม่ หากเป็นเช่นนั้น เมธอด filter() จะรวมอ็อบเจ็กต์ไว้ในอาร์เรย์ใหม่ด้วย