获取数组JavaScript中最接近的数字
假设我们需要编写一个函数,该函数接受一个数字数组并将一个数字作为输入,并返回该数组中存在的最接近该数字的值。
例如-
closest([45,61,53,98,54,12,69,21], 67); //69closest([45,61,53,98,54,12,69,21], 64); //61
因此,让我们为其编写代码。
我们将使用Array.prototype.reduce()方法计算差异并从reduce函数返回最小差异,该最小差异的总和与我们正在搜索的数字将成为我们所需的数字。
这是为此的代码-
示例
const closest = (arr, num) => {return arr.reduce((acc, val) => {
if(Math.abs(val - num) < Math.abs(acc)){
return val - num;
}else{
return acc;
}
}, Infinity) + num;
}
console.log(closest([45,61,53,98,54,12,69,21], 67));
console.log(closest([45,61,53,98,54,12,69,21], 64));
输出结果
此代码在控制台中的输出将为-
6961
以上是 获取数组JavaScript中最接近的数字 的全部内容, 来源链接: utcz.com/z/352566.html