Day.js

Day.js

  • 文档
  • GitHub
  • Languages icon中文
    • English
    • Русский
    • Español
    • 帮助我们翻译

›解析

安装

  • 安装
  • Node.js
  • 浏览器
  • TypeScript
  • 下载

解析

  • 解析
  • 当前时间
  • 字符串
  • 字符串 + 格式
  • Unix 时间戳 (毫秒)
  • Unix 时间戳 (秒)
  • Date 对象
  • 对象
  • 数组
  • UTC
  • Dayjs 复制
  • 验证

取值/赋值

  • 取值/赋值
  • Millisecond
  • Second
  • Minute
  • Hour
  • Date of Month
  • Day of Week
  • Day of Week (Locale Aware)
  • ISO Day of Week
  • 每年中的第几天
  • Week of Year
  • Week of Year (ISO)
  • Month
  • Quarter
  • Year
  • Week Year
  • Week Year (ISO)
  • Weeks In Year (ISO)
  • Get
  • Set
  • Maximum
  • Minimum

操作

  • 操作
  • Add
  • Subtract
  • Start of Time
  • End of Time
  • Local
  • UTC
  • UTC offset

显示

  • 显示
  • Format
  • Time from now
  • Time from X
  • Time to now
  • Time to X
  • Calendar-time
  • Difference
  • Unix 时间戳 (毫秒)
  • Unix 时间戳
  • 月份中天数
  • As Javascript Date
  • As Array
  • As JSON
  • As ISO 8601 String
  • As Object
  • As String

查询

  • 查询
  • Is Before
  • Is Same
  • Is After
  • Is Same or Before
  • Is Same or After
  • Is Between
  • Is a Dayjs
  • Is Leap Year

国际化 (i18n)

  • 国际化 (i18n)
  • 加载语言配置 (NodeJS)
  • 加载语言配置 (浏览器)
  • 改变语言配置 (全局)
  • 改变语言配置 (当前实例)
  • 查看当前语言配置
  • 列出当前语言的月份和周
  • 获取语言配置的属性

插件

  • 插件
  • 加载插件 (NodeJS)
  • 加载插件 (浏览器)
  • AdvancedFormat
  • ArraySupport
  • BadMutable
  • BigIntSupport
  • BuddhistEra
  • Calendar
  • CustomParseFormat
  • DayOfYear
  • DevHelper
  • Duration
  • IsBetween
  • IsLeapYear
  • IsSameOrAfter
  • IsSameOrBefore
  • IsToday
  • IsTomorrow
  • IsYesterday
  • IsoWeek
  • IsoWeeksInYear
  • LocaleData
  • LocalizedFormat
  • MinMax
  • ObjectSupport
  • PluralGetSet
  • PreParsePostFormat
  • QuarterOfYear
  • RelativeTime
  • Timezone
  • ToArray
  • ToObject
  • UpdateLocale
  • UTC
  • weekOfYear
  • WeekYear
  • Weekday

自定义

  • 自定义
  • Month Names
  • Month Abbreviations
  • Weekday Names
  • Weekday Abbreviations
  • Minimal Weekday Abbreviations
  • Relative Time
  • Calendar

时长 (Duration)

  • 时长
  • Creating
  • Clone
  • Humanize
  • Format
  • Milliseconds
  • Seconds
  • Minutes
  • Hours
  • Days
  • Weeks
  • Months
  • Years
  • Add Time
  • Subtract Time
  • Using Duration with Diff
  • As Unit of Time
  • Get Unit of Time
  • As JSON
  • Is a Duration
  • As ISO 8601 String
  • Locale

时区

  • 时区
  • 解析时区
  • 转换到对应时区
  • 用户当前时区
  • 设置默认时区
Translate

字符串 + 格式

如果知道输入字符串的格式,您可以用它来解析日期。

这依赖 CustomParseFormat 插件,才能正常运行

dayjs.extend(customParseFormat)
dayjs("12-25-1995", "MM-DD-YYYY")

如果想解析包含本地化语言的日期字符串,可以传入第三个参数。

require('dayjs/locale/zh-cn')
dayjs('2018 三月 15', 'YYYY MMMM DD', 'zh-cn')

最后一个参数可传入布尔值来启用严格解析模式。 严格解析要求格式和输入内容完全匹配,包括分隔符。

dayjs('1970-00-00', 'YYYY-MM-DD').isValid() // true
dayjs('1970-00-00', 'YYYY-MM-DD', true).isValid() // false
dayjs('1970-00-00', 'YYYY-MM-DD', 'es', true).isValid() // false

如果您不知道输入字符串的确切格式,但知道它可能是几种中的一种,可以使用数组传入多个格式。

dayjs("12-25-2001", ["YYYY", "YYYY-MM-DD"], 'es', true);

支持的解析占位符列表

输入例子详情
YY01两位数的年份
YYYY2001四位数的年份
M1-12月份,从 1 开始
MM01-12月份,两位数
MMMJan-Dec缩写的月份名称
MMMMJanuary-December完整的月份名称
D1-31月份里的一天
DD01-31月份里的一天,两位数
H0-23小时
HH00-23小时,两位数
h1-12小时, 12 小时制
hh01-12小时, 12 小时制, 两位数
m0-59分钟
mm00-59分钟,两位数
s0-59秒
ss00-59秒 两位数
S0-9毫秒,一位数
SS00-99毫秒,两位数
SSS000-999毫秒,三位数
Z-05:00UTC 的偏移量
ZZ-0500UTC 的偏移量,两位数
AAM PM上午 下午 大写
aam pm上午 下午 小写
Do1st... 31st带序数词的月份里的一天
X1410715640.579Unix 时间戳
x1410715640579Unix 时间戳

和 Moment.js 的差异

titleparameters天moment
invalid date with overflow('35/22/2010 99:88:77', 'DD-MM-YYYY HH:mm:ss')'08-11-2011 04:29:17''Invalid date'
invalid date with overflow, strict('35/22/2010 99:88:77', 'DD-MM-YYYY HH:mm:ss', true)'Invalid Date''Invalid date'
'0' day or month (using default values)('1970-00-00', 'YYYY-MM-DD')'1970-01-01''Invalid date'
'0' day or month (using default values), strict('1970-00-00', 'YYYY-MM-DD', true)'Invalid Date''Invalid date'
date not matching format('10/12/2014', 'YYYY-MM-DD')'01-01-2014''12-20-2010'
date not matching format, strict('10/12/2014', 'YYYY-MM-DD', true)'Invalid Date''Invalid date'
first match vs. longest match('2012-05-28 10:21:15', ['YYYY', 'YYYY-MM-DD', 'YYYY-MM-DD HH:mm:ss'])'2012-01-01 00:00:00''2012-05-28 10:21:15'
first match vs. longest match, strict('2012-05-28 10:21:15', ['YYYY', 'YYYY-MM-DD', 'YYYY-MM-DD HH:mm:ss'], true)'2012-05-28 10:21:15''2012-05-28 10:21:15'

List of all recognized separator characters:

-_:.,()/

← 字符串Unix 时间戳 (毫秒) →
Day.js
Community
GitHubGitterSitemap
Copyright © 2025 Day.js