【发布时间】:2021-08-02 02:24:59
【问题描述】:
为什么它在时刻 js 中不考虑夏令时。
const date_string = '2021-02-23T23:24:21Z';
const date_string1 = '2021-05-01T23:24:21Z';
console.log(moment.utc(date_string).tz("America/New_York").format('MM/DD/YYYY hh:mm:ss A'))
console.log(moment.utc(date_string1).tz("America/New_York").format('MM/DD/YYYY hh:mm:ss A'))
日志值:
//"02/23/2021 06:24:21 PM"
//"05/01/2021 06:24:21 PM"
momentjs默认不考虑夏令时,是否需要计算并添加?
【问题讨论】:
-
我无法重现您在this jsFiddle 中使用此确切代码描述的行为。日志分别为
"02/23/2021 06:24:21 PM"和"05/01/2021 07:24:21 PM"。 -
谢谢@esqew,你分享的小提琴奏效了。看起来,我在编辑器上使用的地方出了点问题,jsfiddle.net/awzfs1ch/2。它现在很好。谢谢。
-
似乎包含
moment-timezone-with-data-2010-2020.min.js而不是(表面上更广泛的)moment-timezone-with-data.min.js可能是造成这种情况的原因,但我对图书馆还不够熟悉,无法肯定地说。当然是切线的,但我建议完全删除对momentjs的这种依赖(除其他原因外,它处于“仅维护模式”,将来可能会被弃用),而是选择使用更现代的内置 @987654331 @ API,它应该能够执行您在此处说明的任务。 -
是的,我刚刚被替换了那个时刻库,它现在可以工作了。 (我一直在使用错误的 js 库)jsfiddle.net/awzfs1ch/3。谢谢@esqew
标签: javascript momentjs utc moment-timezone