2017-07-28 80 views
0

我试图将时间戳转换为日期,但我得到不正确的日期。我正在使用Angular和Typescript开展一个项目。获取不正确的日期转换新日期的时间戳

我有这样的时间戳: 1451642400(2016年1月1日)和1454320800(2016年2月1日)

如果我的代码:

date = new Date(1451642400); 
console.log(date.toLocaleString()); 
date = new Date(1454320800); 
console.log(date.toLocaleString()); 

我得到: 17/1/1970 20:14 :02 17/1/1970二十点58分40秒

时,我应该得到: 2016年1月1日10:00:00和2016年1月2日10:00:00

有什么问题?我该如何解决它?

回答

1

您需要通过1000乘以你的Unix时间戳所以其在毫秒.. 如果你像这样做,它的工作:

date = new Date(1451642400 * 1000); 
 
    console.log(date.toLocaleString()); 
 
    date = new Date(1454320800 * 1000); 
 
    console.log(date.toLocaleString());

1

新的日期()他的论点是以毫秒为单位的。所以试试你的时间戳1000,以毫秒为单位。

var date = new Date(1451642400 * 1000);