DayJS:一款出色的轻量级现代日期 API,是 MomentJS 的替代方案。
概念
DayJS 是一个轻量级的 JavaScript 日期 API(2kB),它与 MomentJS API 的功能相同。(如果您使用 Moment.js,则可以轻松使用 Day.js。)
Day.js 是一个极简而简单的库,用于解析、验证、操作和显示现代浏览器中的日期和时间。
为什么 DayJS 取代 MomentJS
摇树优化:Moment 与现代“摇树优化”算法配合不佳,因此往往会增加 Web 应用程序包的大小。
可变性:请注意,Moment 对象是可变的。将 Moment 改为不可变会对所有使用它的项目造成破坏性变更。
开始使用
安装
npm install dayjs
import dayjs from 'dayjs' // ES 2015
解析
now = dayjs();
d = dayjs('2013-03-01', 'YYYY-MM-DD');
d = dayjs('2018-04-04T16:00:00.000Z') // ISO
d = dayjs(1318781876406) // Javascript timestamps -- Millis
d = dayjs.unix(1318781876) // Unix timestamps
d = new Date(2018, 8, 18) // Date object
d = dayjs({ years:2010, months:3, date:5, hours:15, minutes:10, seconds:3, milliseconds:123});
格式
d.format() // "2013-03-01T00:00:00+01:00"
d.format('dddd') // "Friday"
d.format('MMM Do YY') // "Mar 1st 13"
d.fromNow() // "7 years ago"
d.calendar() // "03/01/2013"
获取/设置
dayjs().second() // => new Date().getSeconds()
dayjs().second(30).valueOf() // => new Date().setSeconds(30)
dayjs().hour()
dayjs().hour(12)
操作(加减)
d.add(1, 'day')
d.subtract(2, 'days')
d.startOf('day')
d.endOf('day')
d.startOf('hour')
询问
d.isBefore(dayjs('2011-01-01'))
d.isSame(dayjs('2011-01-01'))
d.isAfter(dayjs('2011-01-01'))



