ฟังก์ชัน lastIndexOf() ใน JS จะคืนค่าดัชนีของการปรากฏครั้งสุดท้ายของสมาชิกที่ส่งเข้ามาในอาร์เรย์ ถ้ามีอยู่ ถ้าไม่มีจะคืนค่า -1
ตัวอย่าง:
[3, 5, 3, 6, 6, 7, 4, 3, 2, 1].lastIndexOf(3) จะคืนค่า 7
เราต้องเขียนฟังก์ชัน JavaScript ที่ทำงานเหมือน lastIndexOf() ที่มีอยู่แล้ว และ override ฟังก์ชันเดิมด้วยฟังก์ชันที่เราสร้าง เราแค่วนลูปจากท้ายมาหน้าจนเจอสมาชิกแล้วคืนค่าดัชนี ถ้าไม่เจอ คืนค่า -1
ตัวอย่าง
โค้ดต่อไปนี้เป็นตัวอย่าง:
const arr = [3, 5, 3, 6, 6, 7, 4, 3, 2, 1];
Array.prototype.lastIndexOf = function(el){
for(let i = this.length - 1; i >= 0; i--){
if(this[i] !== el){
continue;
};
return i;
};
return -1;
};
console.log(arr.lastIndexOf(3));ผลลัพธ์
จะแสดงผลในคอนโซลดังนี้:
7