最近我一直在使用 Google 图表可视化信息。我一直在读取包含 json 字符串的文本文件。 手动添加列,然后迭代 json 字符串以填充行。到目前为止,这个方法效果很好。但现在我在读取具有日期类型的 json 字符串时遇到问题。
这是我的 Test.txt 文件,我从中填充数据表。
[
{"Date":"2014-12-13T00:00:00","Frequency":35},
{"Date":"2014-12-14T00:00:00","Frequency":24},
{"Date":"2014-12-15T00:00:00","Frequency":15}
]
如果我手动添加日期,例如
dataTable.addRows(
[ new Date(2012, 3, 13), 37032 ],
[ new Date(2012, 3, 14), 38024 ]
);
它工作正常,因此问题与从字符串中读取的日期的格式有关。
这就是动态填充行的方式...
for (var i = 0; i < dataValues.length; i++) {
data.addRow([dataValues[i].Date, dataValues[i].Frequency]);
}
我该如何解决这个问题...代码示例和解释值得赞赏。我想我需要将格式从 2014-12-14T00:00:00
更改为 new Date(2012, 3, 14)
最佳答案
你能试试这个吗?
for (var i = 0; i < dataValues.length; i++) {
var splitted = dataValues[i].Date.split(/[- :T]/);
dataTable.addRows([new Date(splitted[0], splitted[1]-1, splitted[2], splitted[3], splitted[4], splitted[5]), dataValues[i].Frequency]);
}
编辑:
作为替代方式
var rowArray = [];
for (var i = 0; i < dataValues.length; i++) {
var splitted = dataValues[i].Date.split(/[- :T]/);
rowArray.push([new Date(splitted[0], splitted[1]-1, splitted[2], splitted[3], splitted[4], splitted[5]), dataValues[i].Frequency]);
}
dataTable.addRows(rowArray);
关于javascript - 带有 Google 日历日期的 Json 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27092357/