การลบค่าซ้ำในอาร์เรย์ด้วย Set
การใช้คอลเลกชัน Set สามารถ
ลบค่าซ้ำในอาร์เรย์ได้อย่างง่ายดาย วิธีการคือแปลง
อาร์เรย์ให้เป็นคอลเลกชัน Set
เนื่องจากคอลเลกชันนี้ไม่สามารถเก็บข้อมูล
ค่าซ้ำได้ ดังนั้นเมื่อทำการแปลงค่าซ้ำ
จะหายไป หากหลังจากนั้นแปลงคอลเลกชัน
กลับเป็นอาร์เรย์ เราจะได้อาร์เรย์ที่ไม่มีค่าซ้ำ
มาดูตัวอย่างกัน สมมติว่าเรามี อาร์เรย์ต่อไปนี้ซึ่งมีค่าซ้ำ:
let arr = [1, 2, 3, 1, 3, 4];
สร้างคอลเลกชัน Set จากอาร์เรย์นั้น:
let set = new Set(arr);
ตอนนี้มาแปลงคอลเลกชันของเรา กลับเป็นอาร์เรย์:
let arr = [1, 2, 3, 1, 3, 4];
let res = [...new Set(arr)];
console.log(res); // จะแสดง [1, 2, 3, 4]
เขียนฟังก์ชันที่รับพารามิเตอร์เป็น อาร์เรย์ และส่งคืนอาร์เรย์นี้ โดยไม่มีค่าซ้ำ