Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

รับรายการที่ไม่ซ้ำจากสองอาร์เรย์ที่แตกต่างกันใน JavaScript


เราจำเป็นต้องสร้างฟังก์ชันที่ยอมรับอาร์เรย์ของอาร์เรย์ และส่งคืนอาร์เรย์ใหม่พร้อมองค์ประกอบทั้งหมดที่มีอยู่ในอาร์เรย์ดั้งเดิมของอาร์เรย์ แต่ลบรายการที่ซ้ำกัน

ตัวอย่างเช่น − หากอินพุตคือ −

const arr = [
   [12, 45, 65, 76, 76, 87, 98],
   [54, 65, 98, 23, 78, 9, 1, 3],
   [87, 98, 3, 2, 123, 877, 22, 5, 23, 67]
];

ผลลัพธ์ควรเป็นอาร์เรย์เดี่ยวขององค์ประกอบที่ไม่ซ้ำกันเช่นนี้ −

[
   12, 45, 54, 78, 9,
   1, 2, 123, 877, 22,
   5, 67
]

ตัวอย่าง

const arr = [
   [12, 45, 65, 76, 76, 87, 98],
   [54, 65, 98, 23, 78, 9, 1, 3],
   [87, 98, 3, 2, 123, 877, 22, 5, 23, 67]
];
const getUnique = (arr) => {
   const newArray = [];
   arr.forEach((el) => newArray.push(...el));
   return newArray.filter((item, index) => {
      return newArray.indexOf(item) === newArray.lastIndexOf(item);
   });
};
console.log(getUnique(arr));

ผลลัพธ์

ผลลัพธ์ในคอนโซลจะเป็น -

[
   12, 45, 54, 78, 9,
   1, 2, 123, 877, 22,
   5, 67
]