1

私はグラフを作成しています。このために、JavaScriptでこの形式のデータが必要です。

var currYear = [["2011-08-01",796.01], ["2011-08-02",510.5], ["2011-08-03",527.8], ["2011-08-04",308.48]]

データはJSONから来ています

var total_click = JSON.parse(<%=raw @report.to_json %>);
var i=0;
var graph_type = "";
var graph_typ = new Array();
while(i < total_click.length){
graph_typ.push("['"+total_click[i].report_date+"',"+total_click[i].clicks+"]");
i++;
}

これから得られるデータは以下の通りです

['2012-03-19',48],['2012-03-20',14],['2012-03-21',934]

この形式を取得するにはどうすればよいですか

[['2012-03-19',48],['2012-03-20',14],['2012-03-21',934]]
4

2 に答える 2

4

文字列を作成する代わりに、配列を配列にプッシュします。

var total_click = JSON.parse(<%=raw @report.to_json %>);
var graph_type = [];
for(var i = 0; i < total_click.length; i++){
  graph_type.push([ total_click[i].report_date, total_click[i].clicks ]);
}
于 2012-04-25T09:40:04.560 に答える
3
graph_typ.push("['"+total_click[i].report_date+"',"+total_click[i].clicks+"]");

配列を別の配列に追加する方法ではありません。ここでは、文字列の配列を作成しています。

while(i < total_click.length){
var arr = [];
arr.push(total_click[i].report_date);
arr.push(total_click[i].clicks);
graph_typ.push(arr);
i++;
}
于 2012-04-25T09:39:26.927 に答える