簡體   English   中英

沒有得到最接近0的結果

[英]not getting the closest to 0 result

我無法找到最接近0的數字,從而為我提供了錯誤的結果..您能告訴我如何解決...而不是索引如何將結果作為值-0.001 ..在下面提供小提琴和代碼

http://jsfiddle.net/YYg8U/7/

var myNumbersToSort = [-1, 2, -3, 4, 0.3,1,-0.001];
function getClosestToZero(set) {
  if(0 === set.length) return null;
  var closest = Math.abs(set[0]), result = 0;
  for(var i in set) {
     var next = Math.abs(set[i]);
     if(closest > next) {
       result = i;
       closest = next;
     }
  }
  return result;  
}

document.getElementById('output').innerHTML = (getClosestToZero(myNumbersToSort));

好消息!

有用。 您唯一錯過的函數返回索引的原因是-0.001最接近0,因此它給出了6,(數組從索引0開始)

我只是嘗試使用最接近的返回值進行操作,並且可以使用不同的數字進行嘗試,您將看到。

var myNumbersToSort = [-1,2,0.000001,-3,4,0.3,1,-0.001]

因為第二個元素是0.000001,所以它給出2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM