moment时间格式化插件用法,非常方便,推荐
1.安装依赖: npm install moment
2.引入: var moment = require('moment');或者import moment from "moment"
3.使用:
前面是方法,后面是结果,以下例子中当时的时间是:2020-08-20 18:42:02.844
moment() :Thu Aug 20 2020 18:42:02 GMT+0800
moment().toDate() :Thu Aug 20 2020 18:42:02 GMT+0800 (中国标准时间)
moment()==moment().toDate() :false
可链式操作.传参数表示设置,不传参为获取.下面的方法单复数同行,即year()和years()效果一致,推荐单数
moment().year() :2020
moment().month() :7
moment().date(6).date() :6
moment().hour() :18
moment().minute() :42
moment().second() :2
moment().millisecond() :844 (获取毫秒)
moment().quarter() :3 (一年里的第几个季度)
moment().day() :4 (一周的周几,0为周日)
moment().week() :34 (一年里的第几周)
moment().weekday() :4 (一年里的第几周)
moment().dayOfYear() :233 (一年里的第几天)
moment().daysInMonth() :31 (当前月有多少天)
moment().year(2000).month(2).format('YYYY-MM-DD HH:mm:ss') :2000-03-20 18:42:02
moment().get('month') :7 (0 至 11)
moment().set('date', 18).format('YYYY-MM-DD HH:mm:ss') :2020-08-18 18:42:02
moment.max([moment().subtract(1, 'days'),moment().add(1,'days')]) :Fri Aug 21 2020 18:42:02 GMT+0800
moment.min([moment().subtract(1, 'days'),moment().add(1,'days')]) :Wed Aug 19 2020 18:42:02 GMT+0800
moment().format('YYYY年MM月DD日 HH:mm:ss.SSS') :2020年08月20日 18:42:02.845
moment().format('YYYY-MM-DD HH:mm:ss') :2020-08-20 18:42:02
moment().format('YYYY-MM-DD') :2020-08-20
moment().format('HH:mm:ss') :18:42:02
moment().format('x') :1597920122845 (单位是毫秒,format('X')单位是秒)
可链式操作.加减时间都用复数形式,对应简写 years:y; quarters:Q; months:M; weeks:w; days:d; hours:h; minutes:m; seconds:s; milliseconds ms
moment().add(1,'days').subtract(1,'years').format('YYYY-MM-DD HH:mm:ss') :2019-08-21 18:42:02
moment().add(1,'months').format('YYYY-MM-DD HH:mm:ss') :2020-09-20 18:42:02
moment().add(1,'years').format('YYYY-MM-DD HH:mm:ss') :2021-08-20 18:42:02
moment().add({days:1,months:1}).format('YYYY-MM-DD HH:mm:ss') :2020-09-21 18:42:02
moment().subtract(1,'years').format('YYYY-MM-DD HH:mm:ss') :2019-08-20 18:42:02
moment('2020-05-20 13:14:00').format('YYYY年MM月DD日 HH:mm:ss') :2020年05月20日 13:14:00
moment(15, "HH").format('YYYY-MM-DD HH:mm:ss') :2020-08-20 15:00:00
moment({hour: 5, minute: 10}).format('YYYY-MM-DD HH:mm:ss') :2020-08-20 05:10:00
moment(new Date(2020, 9, 16)).format('YYYY-MM-DD') :2020-10-16
moment(Date.now() - 24 * 60 * 60 * 1000).format('YYYY-MM-DD HH:mm:ss') :2020-08-19 18:42:02
moment("12-25-1995", "MM-DD-YYYY").format('YYYY-MM-DD HH:mm:ss') :1995-12-25 00:00:00
moment('2020-08-20 12:12:12').isBefore('2020-08-21 11:11:11') :true (是否早于)
moment('2020-08-20').isSame('2020-08-20') :true (是否相等)
moment('2020-08-20 10:12:12').isAfter('2020-08-20 11:11:11','hour') :false (是否晚于)
moment('2020-08-20 10:12:12').isSameOrAfter('2020-08-20 11:11:11','hour') :false (是否晚于等于)
moment('2020-08-20 10:12:12').isSameOrBefore('2020-08-20 11:11:11','hour') :true (是否早于等于)
moment('2020-08-20').isBetween('2020-08-19', '2020-08-25') :true (是否在时间范围内)
moment().startOf('week').format('YYYY-MM-DD HH:mm:ss') :2020-08-16 00:00:00 (这周的第一天,周日为第一天)
moment().startOf('hour').format('YYYY-MM-DD HH:mm:ss.SSS') :2020-08-20 18:00:00.000 (当天当小时第一毫秒)
moment().endOf('year').format('YYYY-MM-DD HH:mm:ss.SSS') :2020-12-31 23:59:59.999 (当年最后一毫秒)
moment().endOf('day').format('YYYY-MM-DD HH:mm:ss.SSS') :2020-08-20 23:59:59.999 (当天最后一毫秒)
moment("20200820184115", "YYYYMMDDHHmmss").fromNow(true) :a minute (传true会省略ago或in,例如2 days ago,an hour ago,in a day)
moment("20200820184115", "YYYYMMDDHHmmss").from(moment().add(1,'days')) :a day ago (传true会省略ago或in,例如2 days ago,an hour ago,in a day)
moment("20200820184115", "YYYYMMDDHHmmss").toNow() :in a minute (传true会省略ago或in,例如2 days ago,an hour ago,in a day)
moment("20200820184115", "YYYYMMDDHHmmss").to(moment().add(1,'days')) :in a day (传true会省略ago或in,例如2 days ago,an hour ago,in a day)
moment([2020,8,20,12,12,12]).diff(moment().add(1,'days'),"days") :29 (默认毫秒,第二个可传参years、months、weeks、days、hours、minutes 和 seconds,第三个传true会精确到小数)
moment().isLeapYear() :true (是否是闰年)
moment("2010 13","YYYY MM").invalidAt() :1 (不合法位置 -1:合法日期,0:年份1:月份2:日期3:小时4:分钟5:秒钟6:毫秒 )
moment("2010 11","YYYY MM").isValid() :true (是否是合法日期)