javascript - js 二維數組比較大小問題。
PHP中文网
PHP中文网 2017-06-26 10:55:26
0
3
873

報錯:Uncaught TypeError: Cannot read property '1' of undefined

console.log()能存取到數字,為什麼比較時就會出錯?

<p id="abc">aaaaaa</p>
<script>
    var data = [
      ["北京", 10],
      ["上海", 20],
      ["福州", 30],
      ["广州", 40],
      ["成都", 40],
      ["西安", 100]
    ];

    var abc = document.getElementById('abc');
    j = 0;
    for (var i = 0; i < data.length; i++) {
        console.log(data[i][1]);
        if (data[i][1] > data[i+1][1]) {
            j++;
        };
    }

    abc.innerHTML = j;
</script>
PHP中文网
PHP中文网

认证0级讲师

全部回覆(3)
小葫芦

這個報錯是溢出數組,現在data.length=6,當i=5是,i+1=6就溢出了。

aaaaaa


這樣就不會報錯了。

淡淡烟草味

你可以這樣寫:

var data = [
    ["北京", 10],
    ["上海", 20],
    ["福州", 30],
    ["广州", 40],
    ["成都", 40],
    ["西安", 100]
];
var abc = document.getElementById('abc');
var j = 0;
var max = data[0][1];
for (let i = 1; i < data.length; i++) {
    let temp = data[i][1];
    
    if (temp > max) {
        j = i;
        max = temp;
    }
}
abc.innerHTML = data[j][0];
淡淡烟草味

雷雷

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!