เราจำเป็นต้องเขียนฟังก์ชันที่รับอาร์เรย์และส่งกลับอาร์เรย์ใหม่ที่ลบค่าที่ซ้ำกันทั้งหมดออกจากอาร์เรย์ ค่าที่ปรากฏมากกว่าหนึ่งครั้งในอาร์เรย์เดิมไม่ควรปรากฏเพียงครั้งเดียวในอาร์เรย์ใหม่
ตัวอย่างเช่น หากอินพุตคือ −
const arr = [763,55,43,22,32,43,763,43];
ผลลัพธ์ควรเป็น −
const output = [55, 22, 32];
Array.prototype.indexOf():จะคืนค่าดัชนีของสตริงที่ค้นหาเกิดขึ้นครั้งแรกหากมีอยู่ มิฉะนั้น -1
Array.prototype.lastIndexOf():จะคืนค่าดัชนีของสตริงที่ค้นหาล่าสุดหากมีอยู่ มิฉะนั้น -1
ดังนั้น เรามาเขียนโค้ดสำหรับฟังก์ชันนี้กัน −
ตัวอย่าง
รหัสสำหรับสิ่งนี้จะเป็น −
const arr = [763,55,43,22,32,43,763,43];
const deleteDuplicate = (arr) => {
const output = arr.filter((item, index, array) => {
return array.indexOf(item) === array.lastIndexOf(item);
});
return output;
};
console.log(deleteDuplicate(arr)); ผลลัพธ์
ผลลัพธ์ในคอนโซลจะเป็น -
[ 55, 22, 32 ]