如何使用 DayJS 防止日期转换为本地时区

Ale*_*lex 4 javascript time date dayjs

我有一个日期字符串const someDate = 2023-02-13T09:00:00.000-05:00

问题是当我通过 DayJS 格式化它时。

dayjs(someDate).format('h:mm A')

当我需要保留收到的信息时,它会根据我的本地时区返回字符串。

有什么方法可以禁用 DayJS 中将时间转换为本地时区的功能吗?

Fil*_*hta 9

是的!

您可以通过将原始时区作为 dayjs 构造函数中的附加参数传递来禁用在 dayjs 中转换为本地时区。

例子:

const someDate = "2023-02-13T09:00:00.000-05:00";
const originalTimezone = someDate.slice(-6);
const formattedDate = dayjs(someDate).utcOffset(originalTimezone).format('h:mm A');
Run Code Online (Sandbox Code Playgroud)

utcOffset()方法允许您设置特定日期实例与 UTC 的分钟偏移量。该originalTimezone常量用于(-05:00)从原始日期字符串中提取时区偏移量someDate,并将其传递给该utcOffset()方法。这将确保格式化的日期保留在原始时区。