获取错误日期将时间戳转换为新日期

时间:2017-07-28 09:52:19

标签: javascript typescript

我试图将时间戳转换为日期,但我的日期不正确。我正在使用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 20:58:40

我应该得到: 1/1/2016 10:00:00和1/2/2016 10:00:00

问题是什么?我该如何解决?

2 个答案:

答案 0 :(得分:1)

您需要将Unix时间戳乘以1000,以毫秒为单位。 如果你这样做,它将起作用:

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

答案 1 :(得分:1)

新的Date()参数以毫秒为单位。因此,请尝试使用1000的时间戳,以毫秒为单位。

var date = new Date(1451642400 * 1000);