我目前正在使用 moment.js 并且我面临将日期格式化为DD MMM的问题,因为它给我的时间比原始日期少了一天。我正在使用下一行进行转换:moment(date).format('DD MMM')例如,日期是2019-09-12T00:00:00Z,对于这个日期,时刻给了我:11 月那么,为什么是 11 而不是 12?这与小时是 00:00:00Z 的事实有关吗?既然如此,又该如何受到威胁?
1 回答
慕姐4208626
TA贡献1852条经验 获得超7个赞
是的,这几乎可以肯定,因为它正在格式化您当前时区的日期,但原始时间以 UTC 表示 -Z最后的意思是“从 UTC 零时区偏移”。作为参考,带有时区的日期将不会在末尾添加Z类似内容-06:00。
我相信您可以通过使用该moment.utc方法来解决您的问题,该方法会导致该日期的打印件以 UTC 而不是您的本地时区打印。
比较打印日期(包括时区)没有.utc:(我的时区是 UTC -6)
console.log(moment('2019-09-12T00:00:00Z').format('DD MMM Z'));
=> 11 Sep -06:00
与.utc:
console.log(moment.utc('2019-09-12T00:00:00Z').format('DD MMM Z'));
=> 12 Sep +00:00
添加回答
举报
0/150
提交
取消