Skip to content
Day.js

简体中文

English
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
한국어
Italiano
Polski
Türkçe
čeština
magyar

简体中文

English
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
한국어
Italiano
Polski
Türkçe
čeština
magyar

主题

Sidebar Navigation

安装

Node.js

浏览器

TypeScript

下载

解析

当前时间

字符串

字符串 + 格式

Unix 时间戳 (毫秒)

Unix 时间戳(秒)

Date 对象

对象

数组

UTC

Day.js 克隆

验证

获取和设置

毫秒

秒

分钟

小时

日期

星期几

星期几(本地化感知)

ISO 星期几

一年中的天数

一年中的第几周

ISO 周数

月份

季度

年

周年份

ISO 周年份

一年中的 ISO 周数

获取

设置

最大值(最晚的时间)

最小值(最早的时间)

操作

添加时间

减去时间

时间单位的起点

时间单位的结束

本地化时间

UTC

UTC 偏移量

展示

格式化

从现在开始的时间

从 X 开始的时间

距离当前时间的相对时间

相对于 X 的时间

日历时间

差异

Unix 时间戳(毫秒)

Unix 时间戳

当月天数

转换为 JavaScript Date

转换为数组

转换为 JSON

ISO 8601 字符串格式

转换为对象

转换为字符串

查询方法

是否早于

是否相同

是否晚于

是否相同或更早

是否相同或之后

是否在两个时间之间

是否为 Day.js 对象

闰年判断

i18n (国际化)

在 NodeJS 中加载区域设置

在浏览器中加载区域设置

全局更改语言环境

局部更改区域设置

获取当前 Day.js 实例的语言环境

列出当前区域设置的月份和星期

访问区域设置相关的功能

插件

在 Node.js 中加载插件

在浏览器中加载插件

AdvancedFormat

ArraySupport

BadMutable

BigIntSupport

BuddhistEra(佛历)

日历

CustomParseFormat

DayOfYear

DevHelper

Duration

IsBetween

IsLeapYear

IsSameOrAfter

IsSameOrBefore

IsToday

IsTomorrow

IsYesterday

IsoWeek

IsoWeeksInYear

LocaleData

LocalizedFormat

MinMax

ObjectSupport

PluralGetSet

PreParsePostFormat

QuarterOfYear

RelativeTime

时区

ToArray

ToObject

UpdateLocale

UTC

weekOfYear

WeekYear

星期几

自定义

月份名称

月份缩写

星期几名称

星期缩写

最小星期缩写

相对时间

日历

时长

创建

克隆

转换为易读时间

格式化

毫秒

秒

分钟

小时

天

周

月份

年份

添加时间

减少时间

使用 Duration 和 Diff

以指定单位获取时长

获取指定时间单位的时长

转换为 JSON

判断是否为 Duration 对象

作为 ISO 8601 字符串

语言环境

时区

在指定时区中解析

转换为时区

获取用户时区

设置默认时区

页面导航

自定义 ​

Day.js 提供了高度的自定义能力。

你可以创建新的语言环境。

js
var localeObject = {...} // Day.js 语言环境对象,详细信息请参考下文
dayjs.locale('en-my-settings', localeObject);

也可以更新现有的语言环境。

TIP

此功能需要 UpdateLocale 插件才能正常使用。

js
dayjs.extend(updateLocale);

dayjs.updateLocale('en', {
  /**/
});

Day.js 语言环境对象模板:

javascript
const localeObject = {
  name: 'es', // 语言环境名称(字符串)
  weekdays: 'Domingo_Lunes ...'.split('_'), // 星期数组
  weekdaysShort: 'Sun_M'.split('_'), // 可选,简写星期数组。如果未提供,则使用星期数组中每个元素的头三个字母。
  weekdaysMin: 'Su_Mo'.split('_'), // 可选,最小化星期数组。如果未提供,则使用星期数组中每个元素的头两个字母。
  weekStart: 1, // 可选,设置一周的开始日期。 0 表示星期日,1 表示星期一,以此类推。默认为 0。
  yearStart: 4, // 可选,确定一年中第一周的规则。包含 1 月 4 日的那一周被认为是当年的第一周。默认为 1。
  months: 'Enero_Febrero ... '.split('_'), // 月份数组
  monthsShort: 'Jan_F'.split('_'), // 可选,简写月份数组。如果未提供,则使用月份数组中每个元素的头三个字母。
  ordinal: n => `${n}º`, // ordinal 函数:(number) => 返回 number + 后缀
  formats: {
    // 允许本地化的简写格式选项
    LTS: 'h:mm:ss A',
    LT: 'h:mm A',
    L: 'MM/DD/YYYY',
    LL: 'MMMM D, YYYY',
    LLL: 'MMMM D, YYYY h:mm A',
    LLLL: 'dddd, MMMM D, YYYY h:mm A',
    // 小写/简写,可选的本地化格式
    l: 'D/M/YYYY',
    ll: 'D MMM, YYYY',
    lll: 'D MMM, YYYY h:mm A',
    llll: 'ddd, MMM D, YYYY h:mm A',
  },
  relativeTime: {
    // 相对时间格式字符串,请保持 %s 和 %d 不变
    future: 'in %s', // 例如,在 2 小时内,%s 会被替换为 "2 小时"
    past: '%s ago',
    s: 'a few seconds',
    m: 'a minute',
    mm: '%d minutes',
    h: 'an hour',
    hh: '%d hours', // 例如,2 小时,%d 替换为 2。
    d: 'a day',
    dd: '%d days',
    M: 'a month',
    MM: '%d months',
    y: 'a year',
    yy: '%d years',
  },
  meridiem: (hour, minute, isLowercase) => {
    // 可选的 AM/PM 表示
    return hour > 12 ? 'PM' : 'AM';
  },
};

Day.js 语言环境文件模板 (例如 dayjs/locale/es.js):

javascript
import dayjs from 'dayjs'

const locale = { ... } // 你的 Day.js 语言环境对象。

dayjs.locale(locale, null, true) // 加载语言环境,以便后续使用

export default locale
Pager
上一页星期几
下一页月份名称

基于 MIT 许可证 发布。

版权所有 (c) 2020 iamkun

https://day.js.org/docs/en/customization/customization

基于 MIT 许可证 发布。

版权所有 (c) 2020 iamkun