前言:
moment官网:文档 | Moment.js 中文网
dayjs用法和moment一样
目录:
具体功能:
1、日期加减
加:
moment('2021-01-28').add(1, 'days').format('YYYY-MM-DD')
减:
moment('2021-01-28').subtract(1, 'days').format('YYYY-MM-DD')
日期相减:
var dateDiff = 0
var m1 = moment(this.reportStartTime)
var m2 = moment(this.reportEndTime)
dateDiff = m2.diff(m1, 'day')
2、获取日期
当前月初月末日期:
var vStartDate=new moment().add('month',0).format("YYYY-MM")+'-01';
var vEndM=moment(vStartDate).add('month',1).add('days',-1);
var vEndDate=moment(vEndM).format("YYYY-MM-DD");
当前年:
moment().format("YYYY")
moment().year(); // Number
当前月:
moment().format('MM')
当前季度:
moment().quarter()
上一年/下一年
上一年:moment().add(-1, 'y').format("YYYY")
下一年:moment().add(1, 'y').format("YYYY")
上几年和下几年同理,做momment日期加减,月季度亦同理
上一季度/下一季度
上一季度:moment().add(-1, 'Q').quarter()
下一季度:moment().add(1, 'Q').quarter()
年开始结束时间
moment().startOf('year')
moment().endOf('year')
季度开始结束时间
当前季度的开始结束时间:
moment().startOf('quarter').format("YYYY-MM-DD")
moment().endOf('quarter').format("YYYY-MM-DD")
指定年指定季度的开始结束时间:(某年某季度的开始结束时间)
moment(moment().format("YYYY-02-01")).startOf('quarter').format("YYYY-MM-DD")
moment(moment().format("YYYY-02-01")).endOf('quarter').format("YYYY-MM-DD")
月度开始结束时间
moment().startOf('month')
moment().endOf('month')
3、格式化当前日期:
//显示结果为:"2017-09-20 15:35:52"
moment(new Date()).format('YYYY-MM-DD HH:mm:ss');
//显示结果为:"2017/09/20 15:39:58"
moment(new Date()).format('YYYY/MM/DD HH:mm:ss');
//显示结果为:"2017-9-20 15:40:45"
moment(new Date()).format('YYYY-M-D HH:mm:ss');
// y表示日期,m表示月份,d表示事件,h表示小时,m表示分钟,s表示秒,不区分大小写
4、获取各阶段时间:
当前时间:
//显示结果为:"2017-09-20 15:35:52"
moment(new Date()).format('YYYY-MM-DD HH:mm:ss');
获取前一个月的日期:
//显示结果为:"2017-08-20 15:35:52"
moment(new Date()).subtract(1,'months').format('YYYY-MM-DD HH:mm:ss');
获取前10天的日期:
//显示结果为:"2017-09-10 15:35:52"
moment(new Date()).subtract(10,'days').format('YYYY-MM-DD HH:mm:ss');
获取前一年的日期:
//显示结果为:"2016-09-20 15:35:52"
moment(new Date()).subtract(1,'years').format('YYYY-MM-DD HH:mm:ss');