คำอธิบาย
เขียนฟังก์ชันที่รับอาร์เรย์ตัวเลขและตัวเลข n คืนค่าดัชนีขององค์ประกอบที่มีค่าใกล้เคียงกับ n มากที่สุด
ตัวอย่างโค้ด
const arr = [2, 42, 82, 122, 162, 202, 242, 282, 322, 362];
const closestIndex = (num, arr) => {
let curr = arr[0], diff = Math.abs(num - curr);
let index = 0;
for (let val = 0; val < arr.length; val++) {
let newdiff = Math.abs(num - arr[val]);
if (newdiff < diff) {
diff = newdiff;
curr = arr[val];
index = val;
}
}
return index;
};
console.log(closestIndex(150, arr));
ผลลัพธ์
4