2016-02-13 26 views
0

我正在尝试使用Moment.js来显示UNIX时间戳的日期,但结果不一致。使用Moment.js从UNIX邮票返回的日期不一致

,我使用了戳转换的代码是这样的:

var timestamp = Moment.unix(this.props.date/1000).format('ddd Mo MMMM').toString(); 

console.log(this.props.date, timestamp); 

然而,什么在浏览器返回如下所示:

enter image description here

+0

发布实际代码以保存转录错误并显示整个日期,而不仅仅是日期和月份会好得多。 1475100000000是2016-09-28T22:00:00.000Z(星期三)和1456786800000是2016-02-29T23:00:00.000Z(星期一)和'新日期(1475100000000/1000)'是1970-01-18T01:45: 00.000Z。 – RobG

+0

我已经改变了图像,为您提供更多信息。使用/ 1000而不是时间或甚至原始值时日期更接近。这与夏令时有什么关系? – JohnRobertPett

回答

0

1)我从来没有见过那一刻与Moment构造函数一起使用。无法在他们的文档中找到它。它通常用作moment(this.props.date/1000, 'UNIX').format("ddd Mo MMMM")

2)Unix时间戳是一个数字。我发现它在你的案例中被打印为数组中的字符串。这也可能是不一致的原因。

+0

我使用这种方法能够在React中'需要'模块。 – JohnRobertPett

+0

@JohnRobertPett在传递它之前解开你的数组,解决了你的问题? – sapy

+0

我更改为这种格式,它为我修复:var timestamp = Moment.unix(this.props.date/1000).format('ddd Do MMMM')。toString(); – JohnRobertPett