เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของตัวเลขเป็นอาร์กิวเมนต์แรกและตัวเลขเป็นอาร์กิวเมนต์ที่สอง
ฟังก์ชันควร หากมีหมายเลขที่ระบุโดยอาร์กิวเมนต์ที่สองอยู่ในอาร์เรย์ ให้ลบออกและเลื่อนองค์ประกอบทั้งหมดไปทางขวาไปทางซ้ายที่เดียว เงื่อนไขเดียวคือเราไม่สามารถใช้วิธี Array เช่น slice(), splice และอื่นๆ
หากมีตัวเลขมากกว่าหนึ่งตัวในอาร์เรย์ เราควรลบอันแรกออก
ตัวอย่างเช่น −
หากอาร์เรย์อินพุตเป็น −
const arr = [3, 5, 6, 3, 7, 8, 8, 6]; const num = 7;
จากนั้นอาร์เรย์ควรกลายเป็น −
const output = [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]; arr[index + 1] = arr[index] - arr[index + 1]; arr[index] = arr[index] - arr[index + 1]; ++index; }; arr.pop(); }; removeElement(arr, num); console.log(arr);
ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
[ 3, 5, 6, 3, 8, 8, 6 ]