moment.js的方法及使用

JavaScript07

moment.js的方法及使用,第1张

Moment.js是一个轻量级的JavaScript时间库,它方便了日常开发中对时间的操作,提高了开发效率。

日常开发中,通常会对时间进行下面这几个操作:比如获取时间,设置时间,格式化时间,比较时间等等

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 (中国标准时间)