Computer >> Máy Tính >  >> Lập trình >> Javascript

Tìm giá trị gần nhất của một mảng trong JavaScript

Chúng tôi được yêu cầu viết một hàm JavaScript nhận một mảng số làm đối số thứ nhất và một số làm đối số thứ hai. Sau đó, hàm sẽ trả về số từ mảng gần nhất với số được cung cấp cho hàm dưới dạng đối số thứ hai.

Ví dụ

Mã cho điều này sẽ là -

const arr = [3, 56, 56, 23, 7, 76, -2, 345, 45, 76, 3];
const num = 37
const findClosest = (arr, num) => {
   const creds = arr.reduce((acc, val, ind) => {
      let { diff, index } = acc;
      const difference = Math.abs(val - num);
      if(difference < diff){
         diff = difference;
         index = ind;
      };
      return { diff, index };
   }, {
      diff: Infinity,
      index: -1
   });
   return arr[creds.index];
};
console.log(findClosest(arr, num));

Đầu ra

Đầu ra trong bảng điều khiển -

45