如何将时间格式从Moment转换为D3?

时间:2015-06-24 21:37:40

标签: node.js d3.js momentjs

在Node中,我正在使用Moment时间,而在前端我正在使用D3包。暂时,我将得到1429588800的时间,转换为“2015年4月21日00:00:00 GMT-0400”。但是在D3中,我得到了“05/031976”。格式为“%x”。

1 个答案:

答案 0 :(得分:2)

我认为问题是您使用秒(unix timestamp)。如果你乘以1000它应该工作。以下是您的tests

var value = 1429588800;

var f = d3.time.format("%x");
var date = new Date(value*1000);
var moment_date = moment.unix(value);

console.log('date',date); //date Tue Apr 21 2015 00:00:00 GMT-0400 (Eastern Daylight Time)
console.log('moment date',moment_date.format()); //moment date 2015-04-21T00:00:00-04:00
console.log('d3 + moment date',f(moment_date.toDate())); //d3 + moment date 04/21/15
console.log('d3 + date',f(date)); //d3 + date 04/21/15