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

How to convert time format from Moment to D3?

在 Node 中,我在时间上使用 Moment,在前端我使用 D3 包。暂时,我将得到一个时间 1429588800,它被转换为 "Tue Apr 21 2015 00:00:00 GMT-0400"。但在 D3 中,我得到“05/031976”。这是格式“%x”。

我认为问题是你使用秒(unix timestamp). If you multiply it by 1000 it should work. Here are some 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