0

我以为我正确地接近了这个,但似乎不是。

我有以下功能:

function oMain(){
    var allMyData = <? echo htmlspecialchars($jsData, ENT_NOQUOTES, 'utf-8')?>;
    var data = new google.visualization.DataTable();
    data.addColumn('string', 'x');
    data.addColumn('number', 'mid');
    var i=0;
    alert(allMyData.length);
    for(i=0;i<allMyData.length;i++){

    }

    alert(allMyData[i+1,0] + "," + allMyData[i+1,1]);
}

allMyData看起来像这样 :[["20121031095013","1.315"],["20121031095029","1.315"],["20121031095046","1.315"],["20121031095102","1.315"],["20121031095118","1.315"],["20121031095134","1.315"],....

这对我来说似乎没问题。

现在:我的警报向我显示如下内容: 20121031095013,1.315,20121031095029,1.315

我期待的地方:20121031095029,1.315

有人可以帮我看看我犯的错误吗?

谢谢

4

1 回答 1

0

allMyData[i+1,0]返回另一个巨大数组中的第一个数组。我想你的意思是:

alert(allMyData[i+1][0] + "," + allMyData[i+1][1]);

这样,您将选择数组i+1,以及其中的单独值。

如果要为数组中的每个数组单独设置警报,则需要将警报语句放在 for 循环中:

function oMain(){
    var allMyData = <? echo htmlspecialchars($jsData, ENT_NOQUOTES, 'utf-8')?>;
    var data = new google.visualization.DataTable();
    data.addColumn('string', 'x');
    data.addColumn('number', 'mid');
    var i=0;
    alert(allMyData.length);
    for(i=0;i<allMyData.length;i++){
        alert(allMyData[i+1][0] + "," + allMyData[i+1][1]);
    }
}​​​​
于 2012-11-02T02:06:05.520 回答