Javascript 时区的toDate时刻没有给出正确的时间

Javascript 时区的toDate时刻没有给出正确的时间,javascript,momentjs,moment-timezone,Javascript,Momentjs,Moment Timezone,不知何故,我试图得到美国/纽约的时区(我的地区时间是从美国东部时间起-1小时)。但是当我使用时,我总是得到相同的时间 moment(new Date()).tz("America\New_York").toDate() 我使用了错误的方法还是发生了什么?有人能帮我吗 以下是指向JSFIDLE的链接: per,momenttoDate始终返回带有系统时区的日期,因为javascript日期对象始终位于本地时区 您可以使用格式或字符串,如下所示,获取所需时区中的日期: var estTime =

不知何故,我试图得到美国/纽约的时区(我的地区时间是从美国东部时间起-1小时)。但是当我使用时,我总是得到相同的时间

moment(new Date()).tz("America\New_York").toDate()
我使用了错误的方法还是发生了什么?有人能帮我吗

以下是指向JSFIDLE的链接: per,moment
toDate
始终返回带有系统时区的日期,因为javascript日期对象始终位于本地时区

您可以使用
格式
字符串
,如下所示,获取所需时区中的日期:

var estTime = moment(new Date()).tz("America/New_York").format();
下面是一个可运行的代码段,以充分演示:
moment.tz.add([
“美国/纽约东部东部东部时间50 40 0101 1Lz50 1zb0 Op0”
]);
var estTime=moment(new Date()).tz(“美国/纽约”).format();
log('堆栈溢出时间:',新日期);
console.log('东部时间:',东部时间)

也许您不在您怀疑的时区(或者至少您的网络不在)

若要测试功能,请确保每次测试都使用已知值。下面是对您的示例的更新以及进一步测试的链接:

moment.tz.add([
  'America/New_York|EST EDT|50 40|0101|1Lz50 1zb0 Op0'
]);

let utc_time = moment().utc().format();
let estTime = moment(utc_time).tz("America/New_York").format();

console.log(utc_time);
console.log(estTime)