【发布时间】:2013-03-05 16:49:49
【问题描述】:
假设这是我的数据对象中的字符串
{ date: "2013-03-04 12:00:00+0000" }
var parseDate = d3.time.format("%Y-%m-%d_%H:%M:%S+%Z");
data.forEach(function(d) {
d.date = parseDate(d.date);
});
然而,在我的forEach 方法中,我的日期对象每次都返回 null。我不明白为什么会失败。
同样
{ date: "2013-03-04 00:00:00+0000" }
与
d3.time.format("%Y-%m-%d 00:00:00+00").parse
工作正常。但是日期不太精确,因为它假设在我的可视化中一切都发生在午夜
为什么我的字符串日期解析器在我的第一个场景中失败了?我尝试在 chrome 的控制台/检查元素中单步执行日期解析器,但无济于事。
这里是 d3.time.format 文件https://github.com/mbostock/d3/wiki/Time-Formatting
【问题讨论】:
-
您可能不需要 [+%Z] 中的 [+]。试试 ["%Y-%m-%d_%H:%M:%S%Z"]
-
@Andrew 这也不起作用
d3.time.format("%Y-%m-%d_%H:%M:%S%Z").parse
标签: javascript parsing date d3.js