ISO 8601
表示北京时间2004年5月3日下午5点30分8秒,可以写成
- 2004-05-03T17:30:08+08:00
- 或20040503T173008+08。
JavaScript Date 对象
shi一样
//创建 Date 对象
var d = new Date()
d //Mon Mar 23 2020 17:17:34 GMT+0800 (中国标准时间)
Date.parse(d) //1584955054000
new Date(1584955054000) //参数是从 1970 年 1 月 1 日至今的毫秒数
//变成ISO 8601格式的时间
d.toISOString() //"2020-03-23T09:17:34.020Z"
d.getFullYear() //2020
d.getDate() //23
d.getHours() //17
点击查看更多方法
moment.js
好用但是体积太大
day.js
和moment.js一样,而且比moment.js体积小。用起来吧!
安装
npm install dayjs --save
使用
- 导入
import dayjs from 'datjs' - 直接调用 dayjs() 将返回一个包含当前日期和时间的 Day.js 对象。
var now = dayjs()
//等同于 dayjs(new Date()) 的调用。
- 解析传入的 ISO 8601 格式的字符串并返回一个 Day.js 对象实例。
dayjs('2018-04-04T16:00:00.000Z')
.format根据传入的占位符返回格式化后的日期。
将字符放在方括号中,即可原样返回而不被格式化替换 (例如, [MM])。
dayjs().format()
// 默认返回的是 ISO8601 格式字符串 '2020-04-02T08:02:17-05:00'
dayjs('2019-01-25').format('[YYYYescape] YYYY-MM-DDTHH:mm:ssZ[Z]')
// 'YYYYescape 2019-01-25T00:00:00-02:00Z'
dayjs('2019-01-05').format('YY年M月DD日') // '19年1月05日'


.isSame这表示 Day.js 对象是否和另一个提供的日期时间相同。
dayjs().isSame(dayjs('2011-01-01')) // 默认毫秒
如果想使用除了毫秒以外的单位进行比较,则将单位作为第二个参数传入。
dayjs().isSame('2011-01-01', 'year')
各个传入的单位对大小写不敏感,支持缩写和复数。