เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ตัวเลขและตัวเลขเป้าหมาย หากตัวเลขเป้าหมายมีอยู่ในอาร์เรย์ ให้ลบตัวแรกที่พบ และเลื่อนสมาชิกทางขวาไปทางซ้ายหนึ่งตำแหน่ง โดยห้ามใช้เมธอดอาร์เรย์อย่าง slice(), splice() ฯลฯ
ตัวอย่าง: อาร์เรย์ [3, 5, 6, 3, 7, 8, 8, 6] และตัวเลข 7 ผลลัพธ์ควรเป็น:
[3, 5, 6, 3, 8, 8, 6]
ตัวอย่างโค้ด
const arr = [3, 5, 6, 3, 7, 8, 8, 6];
const num = 7;
const removeElement = (arr = [], num) => {
let index = arr.indexOf(num);
if (index === -1) {
return;
}
while (index + 1 < arr.length) {
arr[index] = arr[index + 1];
index++;
}
arr.pop();
};
removeElement(arr, num);
console.log(arr);
ผลลัพธ์
ค่าที่แสดงในคอนโซลจะเป็นดังนี้:
[ 3, 5, 6, 3, 8, 8, 6 ]