可以在 moment.js 中禁用夏令时转换吗?
http://plnkr.co/edit/MjFelt?p=preview
$scope.obj.date = moment('2016-06-03T04:00:00.000Z');
基本上我的应用程序只处理事件和日期,但是转换夏令时的 moment.js 导致日期出现问题。它是否有任何设置会在整个应用程序使用过程中禁用它?
最佳答案
如果您说您想要 moment 显示您的日期和时间(UTC,如“Z”所示),那么您应该使用 moment.utc:
moment.utc('2016-06-03T04:00:00.000Z').format()
"2016-06-03T04:00:00Z"
当您使用默认的 moment 构造函数时,就像您现在这样,您告诉 moment 将您的 UTC 时间转换为本地时间,这就是您看到时差的原因。例如,在我的本地机器上(我目前是 UTC-5)我得到以下信息:
moment('2016-06-03T04:00:00.000Z').format()
"2016-06-02T23:00:00-05:00"
这个问题经常出现,所以我写了这篇博文详细解释了 moment 的构造函数以及它如何转换 ISO8601 日期:https://maggiepint.com/2016/05/14/moment-js-shows-the-wrong-date/
关于javascript - 如何禁用 moment.js 夏令时区转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37797893/