moment.js是一个轻量级的js时间处理类库,其使用简单,方便了日常开发中对时间的操作,提高了开发效率。
引用moment.js
npm install moment
常用的方法
1、moment()
获取当前的日期和时间
moment()
获取string的日期和时间
moment(string)
2、获取get
获取当天的年份
moment().get('year')
获取当天的月份 0-11
moment().get('month')
获取当天的日期
moment().get('date')
3、格式format
得到的时间格式为yyyy-mm-dd
moment(string,'yyyy-mm-dd') moment(string).format('yyyy-mm-dd')
4、设置subtract
.subtract(number, string);
设置年份,,获取一年前的时间
moment().subtract(1, 'years')
设置月份,获取一个月前的时间
moment().subtract(1, 'months')
设置日期,获取昨天的时间
moment().subtract(1, 'days')
5、开始startof()
通过将原始的 moment 设置为时间单位的开头来对其进行更改。
.startof(string);
获取今天的0时0分0秒
moment().startof('day')
获取本周第一天的0时0分0秒
moment().startof('week')
6、结束endof()
通过将原始的 moment 设置为时间单位的末尾来对其进行更改
.endof(string);
获取今天的23时59分59秒
moment().endof('day')
获取本周第一天的23时59分59秒
moment().endof('week')
7、总天数days in month
.daysinmonth()
获取2月的天数。
moment("2012-02", "yyyy-mm").daysinmonth() // 29
8、时间戳
.unix() //秒数
.valueof() //毫秒数
获取时间戳(以秒为单位)
moment().format('x').unix() // 返回值为数值型
获取时间戳(以毫秒为单位)
moment().format('x').valueof() // 返回值为数值型
9、关于ant选择时间的实战
在ant的a-range-picker组件的disableddate使用
不能选择今天之前的日期(包括今天)
disableddate(current) { return current && current < moment().endof('day'); },
不能选择今天之前的日期(不包括今天)
disableddate(current) { return current && current < moment().subtract(1, 'days').endof('day') },
点击选择的2019-01-01之前的数据无法确认
disableddate(current) { return current && current < moment('2019-01-01') },