JavaScript 中最近元素的索引


假设我们有一个这样的数组 −

const arr = [2, 42, 82, 122, 162, 202, 242, 282, 322, 362];

我们需要编写一个 JavaScript 函数,它接收一个这样的数组和一个数字(例如 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

更新于: 2020 年 10 月 24 日

145 次浏览

开启你的 职业生涯

修完课程获得认证

开始
广告