moment.js在不同时区给错时间

时间:2018-07-27 09:41:35

标签: node.js momentjs

上架时间为2018年7月2日,晚上11点。 (IST)

> moment('2018-07-02T23:00:00.000').unix()
1530552600

现在,当我从时代转换为IST时,它增加了7分钟的额外时间。

> moment.unix(1530552600).tz("Asia/Kolkata").format("DD:MM:YYYY HH:MM z");
'02:07:2018 23:07 IST'

转换为ET时区,比IST时区少30分钟。 ET比IST落后9.5,所以应该是“ 02:07:2018 01:30:00 EDT'

> moment.unix(1530552600).tz("America/New_York").format("DD:MM:YYYY HH:MM z");
'02:07:2018 13:07 EDT'

EDT

IST

enter image description here

1 个答案:

答案 0 :(得分:4)

您的格式字符串错误,您使用了MM(月)而不是mm(分钟)

尝试

moment.unix(1530552600).tz("Asia/Kolkata").format("DD:MM:YYYY HH:mm z");

有关所有其他格式,请参见moment documentation