日常开发中,通常会对时间进行下面这几个操作:比如获取时间,设置时间,格式化时间,比较时间等等
npm install moment 或者 yarn add moment
格式化当前时间:
moment().format("YYYY-MM-DD HH:mm:ss")
当前年:
moment().format("YYYY")
moment().year()// Number
当前月:
moment().format('MM')
当前季度:
moment().quarter()
获取本日截止时间:
moment().startOf('day').format("YYYY-MM-DD HH:mm:ss")
moment().endOf('day').format("YYYY-MM-DD HH:mm:ss")
上一年/下一年:
上一年: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')
昨天: moment().subtract(1, 'days')
明天: moment().add(1, 'days')
前一个月: moment().subtract(1, 'months')
后一个月: moment().add(1, 'months')
js date加一天是什么?一起来看看吧:
js date加一天是一个轻量的 JavaScript 时间日期处理库。与 Moment.js 的 API 设计保持一致,随着moment的包逐渐变大,官方已经决定未来停止维护相关moment.js库,并且官网也推荐使用dayjs库,因为它有很多优势。
其主要特性如下:
1、与 Moment.js 相同的 API 和用法
2、不可变数据(Immutable)
3、支持链式操作(Chainable)
4、只有 2kb 大小(一些高级用法以扩展的形式存在,可按需加载)
5、全浏览器兼容
6、强大的国际化支持(I18n)
代码示例:
1、以当前日期new date()为例,也可以将例中new date()换成任意date对象
var d = new Date() d.setTime(d.getTime()+24*60*60*1000) var s = d.getFullYear()+"-" + (d.getMonth()+1) + "-" + d.getDate()
2、获取今天的0时0分0秒
var startDate= new Date(new Date().toLocaleDateString()) //Wed March 09 2022 00:00:00 GMT+0800 (中国标准时间)
3、获取一个月前的日期
var lastM =new Date(new Date().setMonth(new Date().getMonth()-1))//Wed Feb 09 2022 13:38:08 GMT+0800 (中国标准时间)
4、获取一个月前的0时0分0秒
var lastM_start =new Date(new Date(new Date().toLocaleDateString()).setMonth(new Date().getMonth()-1)) //Wed Feb 09 2022 00:00:00 GMT+0800 (中国标准时间)
5、获取前一天的日期
var yesterday = new Date(new Date().setDate(new Date().getDate()-1))//Wed March 08 2022 13:41:39 GMT+0800 (中国标准时间)
6、获取今天的23时59分59秒
var endDate = new Date(new Date(new Date().toLocaleDateString()).getTime()+24*60*60*1000-1)//Wed March 09 2022 23:59:59 GMT+0800 (中国标准时间)
7、获取昨天的23时59分59秒
new Date().setDate(new Date().getDate()-1)).toLocaleDateString()).getTime()+24*60*60*1000-1)//Wed March 08 2022 23:59:59 GMT+0800 (中国标准时间)