DateTime从UTC转换为其他时区

DateTime convert from UTC to other timezone

本文关键字:其他 时区 转换 UTC DateTime      更新时间:2024-04-29

我使用以下代码将日期时间转换为美国/芝加哥,但转换的时间错误。

process.env.TZ = "UTC";
var moment = require('moment-timezone');
var startTime = (new Date('2016-04-08 17:40:04')).toISOString();s
var newDateTime = moment(startTime);
var newDateTime = newDateTime.tz('America/Chicago').format('YYYY-MM-DD HH:MM:ss a');
console.log(newDateTime); // expected 2016-04-08 12:40:04 PM
                          // getting  2016-04-08 12:04:04 pm

您使用了错误的格式字符串,MM表示Month number,您需要使用mm-Minutes

var newDateTime = newDateTime.tz('America/Chicago').format('YYYY-MM-DD HH:mm:ss a');

文档