2017-04-14 130 views
0

,你可以通過鏈接查看(https://jsfiddle.net/andresmcio/vLp84acv/)是一個簡單的表格,作爲存儲數據:如何通過使用JavaScript獲取輸入數據的json對象搜索最大值和最小值?

var _newStudent = { 
     "code": code, 
     "names": names, 
     "grade": grades, 
    }; 

我遇到了麻煩與各自的按鈕,最高和最低的等級,因爲它是本次入境作爲最大值和最小值。

會很高興如果有人可以幫助,請記住,它應該顯示爲(與警報),只使用JavaScript,而不是jQuery或任何其他。

預先感謝。

+0

你應該包括計算問題中最高和最低成績的功能,這樣人們可以直接看到並參考你的工作。 – AeroBuffalo

+0

歡迎來到Stack Overflow!將您的代碼發佈到此處,而不僅僅是在遠程站點。您可以使用[Stack Snippets](https://stackoverflow.blog/2014/09/introducing-runnable-javascript-css-and-html-code-snippets/)使其可執行。 – Barmar

+0

你需要調用'Math.max()'所有等級,而不僅僅是其中的一個。它計算所有參數的最大值。如果將它們放入數組中,請參閱[這裏](http://stackoverflow.com/questions/1669190/javascript-min-max-array-values)瞭解如何獲取最大值和最小值。 – Barmar

回答

0

看起來你可能在你的函數中有兩個問題。 1.)您將重置用於跟蹤每次迭代信息的變量。 2.)在每次迭代期間,您只將每個學生與同一名學生進行比較。因此,我認爲像下面這樣的東西會提供你正在尋找的東西。

function hghGrade(json) { 
    if (json.length > 1) { 
     var text = ""; 
     var maxGrade = 0; 
     var thisGrade = 0; 
     for (var i = 0; i < json.length; i++) { 
      thisGrade = parseFloat(json[i].grade); 
      if (maxGrade < thisGrade)) { 
       maxGrade = thisGrade; 
       test = json[i].names + " ID code " + json[i].code + " with grade " + json[i].grade; 
      } 
     } 
     alert("The best grade is from: " + text); 
    } else { 
     alert("Please register at least two students"); 
    } 
} 
+0

完美@AeroBuffalo!正如需要。我注意到包含文本變量的錯誤,它只是將最大值應用於某個項目,但決定發佈原始代碼,因爲其他嘗試不返回任何內容。謝謝你的幫助。 :) – Andresmcio

相關問題