moment常用操作(日期加减、获取月初月末、季度、年)

简介: moment常用操作(日期加减、获取月初月末、季度、年)

官网:http://momentjs.cn/docs/

1、日期加减
1.加
moment('2021-01-28').add(1, 'days').format('YYYY-MM-DD')
2.减
moment('2021-01-28').subtract(1, 'days').format('YYYY-MM-DD')
3.日期相减
 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');
相关文章
|
算法
轨迹系列——一种基于中值滤波的轨迹纠偏方法和几点思考
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 在无路网的情况下,如何进行轨迹纠偏也是一个很多人在研究的内容,各种方案均有很多,有基于不同滤波算法的,也有基于机器学习的,等等。
3252 0
|
JavaScript
【vue】 vue-seamless-scroll 无缝滚动依赖
【vue】 vue-seamless-scroll 无缝滚动依赖
2348 1
|
资源调度
蓝易云 - Error: PostCSS plugin autoprefixer requires PostCSS 8问题解决办法
以上步骤应该可以解决"PostCSS plugin autoprefixer requires PostCSS 8"的问题。如果问题仍然存在,你可能需要检查你的项目配置,确保没有其他的冲突或问题。
882 0
|
IDE Linux 开发工具
2022.2最新idea破解,window,mac通用
1、安装IDEA,一路next即可,遇到安装路径时,记得修改安装路径。 2、安装完成,打开IDEA,会先弹出一个注册框,勾选Evaluate for free,点击Evaluate,然后进入主界面 3. 开始破解
17017 0
2022.2最新idea破解,window,mac通用
|
编解码 前端开发 信息无障碍
CSS媒体查询(@media)全面解析
CSS媒体查询(@media)全面解析
397 1
|
前端开发 JavaScript
node反向代理,解决跨域(http-proxy-middleware)
使用node.js和http-proxy-middleware库实现反向代理,解决跨域问题,允许前端请求通过代理访问不同端口的服务。
923 3
|
应用服务中间件 Android开发
“Server Tomcat v9.0 Server at localhost was unable to start within 45 seconds“的解决方案
“Server Tomcat v9.0 Server at localhost was unable to start within 45 seconds“的解决方案
1353 0
“Server Tomcat v9.0 Server at localhost was unable to start within 45 seconds“的解决方案
|
前端开发 JavaScript
纯前端用XLSX库导出excel,可含多个sheet
纯前端用XLSX库导出excel,可含多个sheet
1139 0
|
JavaScript 前端开发
vue引入axios出现Module parse failed: Unexpected token (5:2)
vue引入axios出现Module parse failed: Unexpected token (5:2) 页面显示 Cannot GET /
681 3

热门文章

最新文章