Giả sử chúng ta có một mảng như sau:
const arr = [2, 42, 82, 122, 162, 202, 242, 282, 322, 362];Chúng ta cần viết một hàm JavaScript nhận vào mảng đó và một số
n. Hàm sẽ trả về chỉ số của phần tử trong mảng có giá trị gần nhất vớin.Ví dụ
Mã thực hiệ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));Kết quả
Kết quả in ra console:
4