0

在我的应用程序中,我通过 Python(通过 AJAX 调用)以以下格式从 SQL 实例返回一些值:

[['2012-11-18', 33, 2], ['2012-11-19', 162, 11], ['2012-11-20', 140, 13]]

不幸的是,如果我希望 Google Chart API 将其识别为日期而不是字符串,我似乎需要new Date(x)在 Javascript 中使用对象创建。这总是必要的吗?我怎样才能以编程方式从我当前的输出中实现这一点,无论是在 Javascript 还是 Python 中?任何提示都会有所帮助!

下面不起作用

...
data.addColumn('date', 'Date');
data.addColumn('number', 'Pageviews');
data.addColumn('number', 'Unique Visitors');
data.addRows([['2012-11-18', 33, 2], ['2012-11-19', 162, 11], ['2012-11-20', 140, 13]]); 
...

以下作品:

...
data.addColumn('date', 'Date');
data.addColumn('number', 'Pageviews');
data.addColumn('number', 'Unique Visitors');
data.addRows([[new Date('2012-11-18'), 33, 2], [new Date('2012-11-19'), 162, 11], [new Date('2012-11-20'), 140, 13]]); 
...
4

1 回答 1

1

试试这个:

var dateArray = [['2012-11-18', 33, 2], ['2012-11-19', 162, 11], ['2012-11-20', 140, 13]];
for(var i = 0; i < dateArray.length; i++){
    dateArray[i][0] = new Date(dateArray[i][0]); // Set dateArray[i][0] to a `new Date()` with as value the string in `dateArray[i][0]`;
}
data.addRows(dateArray);

这会将日期字符串设置为数组中的日期对象。

于 2012-12-19T11:40:46.087 回答