2014-07-02 98 views
-1

我在這裏搜索並嘗試了幾種不同的方法,但沒有得到想要的結果。我有一個30個元素的數組。我試圖通過一個javascript數組來查找最小值和最大值。問題是我只獲取數組的最後一個值。我試過使用Math.max.apply,仍然得到90,數組中最大的數字是97,但90出現4次,最後一次是數組的最後一次。查找數組中的最大值

下面是代碼

  var max = 0; 
     var min = 0; 
     var len = weather.length; 
     var temps; 

     for(i = 0; i < len; i++) 
     { 
      temps = weather[i].MaxTemp; 
      max = Math.max(temps, len); 
      //max = Math.max(weather[i].MaxTemp, len); 
     } 
     console.log(max); 
+1

'len'不是數組的元素。我建議你學習如何調試你的JavaScript代碼。 –

+2

大聲讀出代碼! – epascarello

回答

1

你的意思是

max = Math.max(temps, max); 

您需要將當前元素比較先前發現的最大。如果你的臨時工全部是負面的,你會遇到問題。所以你想

var max = -99999; 

以及。