Day.js通过支持环境 (opens new window)中的国际化API (opens new window)支持时区。通过使用内置API,zero-byte时区数据需要包含在代码包中。

对于遗留或不支持的环境,请使用适当的polyfill (opens new window)

Day.js使用了 Internationalization API (opens new window) 来设置和使用时区。可以在以下 这些环境 (opens new window) 中直接使用。 通过使用内置的 API,无需额外引入时区数据。

对于旧环境或不支持的环境,请选用合适的 polyfill (opens new window)

注意

此功能依赖 Timezone 插件

dayjs.extend(utc)
dayjs.extend(timezone)

dayjs.tz("2014-06-01 12:00", "America/New_York")

dayjs("2014-06-01 12:00").tz("America/New_York")

# 解析时区

使用给定时区解析日期时间字符串并返回 Day.js 对象实例。

注意

此功能依赖 Timezone 插件

dayjs.extend(utc)
dayjs.extend(timezone)
dayjs.tz("2013-11-18 11:55", "America/Toronto")

如果你知道输入字符串的格式,你可以用它来解析一个日期,参数与 字符串 + 格式 完全相同。

dayjs.extend(customParseFormat)
dayjs.tz("12-25-1995", "MM-DD-YYYY", "America/Toronto")

注意

此功能依赖 CustomParseFormat 插件

# 转换到对应时区

转换到对应时区并更新 UTC 偏移量,返回 Day.js 对象实例。

注意

此功能依赖 Timezone 插件

dayjs.extend(utc)
dayjs.extend(timezone)
dayjs("2013-11-18 11:55").tz("America/Toronto")

# 用户当前时区

猜测用户所在时区

注意

此功能依赖 Timezone 插件

dayjs.extend(utc)
dayjs.extend(timezone)
dayjs.tz.guess() // America/Chicago

# 设置默认时区

将默认时区从本地时区变为自定义时区。

你仍然可以在指定的 dayjs 对象中自定义不同的时区。

注意

此功能依赖 Timezone 插件

dayjs.extend(utc)
dayjs.extend(timezone)

dayjs.tz.setDefault("America/New_York")

// The same behavior with dayjs.tz("2014-06-01 12:00", "America/New_York")
dayjs.tz("2014-06-01 12:00")  // 2014-06-01T12:00:00-04:00

// use another timezone
dayjs.tz("2014-06-01 12:00", "Asia/Tokyo")  // 2014-06-01T12:00:00+09:00

// reset timezone
dayjs.tz.setDefault()

注意

dayjs.tz.setDefault 不会影响现有的 dayjs 对象。

Last Updated: 10/10/2022, 6:48:58 PM