rep*_*cus 3 javascript datetime d3.js
是否有一种解决方法可以让D3.js解析包含毫秒的日期时间?我不能让这个工作:
var parseDate = d3.time.format("%Y-%m-%dT%H:%M:%S").parse
parseDate("2011-01-01T12:14:35")
//that works
parseDate("2011-01-01T12:14:35.3456")
//returns null
Run Code Online (Sandbox Code Playgroud)
如果您的dateTime字符串已经采用该格式,则不需要d3将其解析为实际的日期对象.
例如:
new Date("2011-01-01T12:14:35")
# Sat Jan 01 2011 04:14:35 GMT-0800 (PST)
Run Code Online (Sandbox Code Playgroud)
得到一个正确的日期对象.
包含格式以解析使用 %L源的毫秒数。
对于您的情况:
var parseDate = d3.time.format("%Y-%m-%dT%H:%M:%S").parse
parseDate("2011-01-01T12:14:35") //that works
var parseDate = d3.time.format("%Y-%m-%dT%H:%M:%S.%L").parse
parseDate("2011-01-01T12:14:35.345") // works
Run Code Online (Sandbox Code Playgroud)
请注意,您提供了 4 位数作为毫秒,如果您正在处理毫秒,我认为这不是真的。如果你真的有 4 位或 6 位(微秒)并且你只对毫秒感兴趣,你可以过滤掉最后几位数字。例如:
var parseDate = d3.time.format("%Y-%m-%dT%H:%M:%S.%L000").parse
parseDate("2011-01-01T12:14:35.345000") //that works
Run Code Online (Sandbox Code Playgroud)