【发布时间】:2020-08-05 08:47:13
【问题描述】:
我有一个代表 ISO UTC 日期的字符串:2020-06-08T04:00:00.000Z(UTC 7 月 8 日凌晨 4 点)。
我从中创建了一个date-fns 对象,以便我可以根据需要格式化显示的字符串。所以我继续如下:
const localDate = parseISO('2020-06-08T04:00:00.000Z');
const formattedDateString = format(localDate, 'MMMM dd, yyyy, EEEE, hh:mm aaa');
但是 formattedDateString 以当地时间显示(假设您的浏览器位于 UTC 前 1 小时的时区,它显示 ...05 AM),但我需要显示 UTC 时间(无论浏览器的时区如何),即 ... 4 AM。我该怎么做?
注意:... 表示省略以保持示例清晰
【问题讨论】:
-
您可以在这里找到尝试的变体stackoverflow.com/questions/2891361/…
-
@PeteKelley,谢谢,但我特别需要 Javascript 库
date-fns -
date-fns文档中有一个与时区相关的文档,它应该涵盖您要查找的内容:date-fns.org/v2.12.0/docs/Time-Zones -
本地时间似乎是默认时间,要切换到 UTC,您需要 do it yourself。
-
这是我的想法之一,但
date-fns-tz库需要第二个参数时区,所以如果你像Europe/London这样传递某事,它会部分(!!!)到工作(当英国在夏季/冬季时间切换期间偏离 UTC),因此我们再次面临一年中使用这种方法的 1 小时休息时间。除非有“UTC”参数,但我找不到任何涉及此类的文档
标签: javascript date-fns