使用jquery,我如何找到数组中最接近的匹配到指定的数字

bre*_*ite 10 arrays math jquery rounding closest

使用jquery,我如何找到数组中最接近的匹配到指定的数字

例如,你有一个像这样的数组:

1,3,8,10,13 ......

什么数字最接近4?

4将返回3
2将返回3
5将返回3
6将返回8

我已经看到这种方法在许多不同的语言中完成,但不是在jquery中,这可以简单地做到

Guf*_*ffa 39

您可以使用该jQuery.each方法循环数组,除了它只是简单的Javascript.就像是:

var theArray = [ 1, 3, 8, 10, 13 ];
var goal = 4;
var closest = null;

$.each(theArray, function(){
  if (closest == null || Math.abs(this - goal) < Math.abs(closest - goal)) {
    closest = this;
  }
});
Run Code Online (Sandbox Code Playgroud)