开发者社区 问答 正文

获取数组中最接近的数字

我有一个从负1000到正1000的数字,并且我有一个带有数字的数组。像这样:

[2, 42, 82, 122, 162, 202, 242, 282, 322, 362] 我希望我得到的数字更改为最接近数组的数字。

例如,我得到80我想要的数字82。

展开
收起
保持可爱mmm 2020-02-06 23:31:58 443 分享 版权
1 条回答
写回答
取消 提交回答
  • ES5版本:

    var counts = [4, 9, 15, 6, 2], goal = 5;

    var closest = counts.reduce(function(prev, curr) { return (Math.abs(curr - goal) < Math.abs(prev - goal) ? curr : prev); });

    console.log(closest);

    问题来源于stack overflow

    2020-02-06 23:32:19
    赞同 展开评论
问答地址: