1. 程式人生 > >Moment.js獲取當前月份所在季度的開始結束日期

Moment.js獲取當前月份所在季度的開始結束日期

需求:獲取當前月份所在第幾季度,並計算出本季度的開始、結束日期。

技術:Moment.js

說明:在網上找了一下,沒發現直接獲取的辦法,故自己整合了一下。

實現

一、獲取當前所在第幾季度(Moment.js官方文件有的),當前年份:

let currentQuarter = moment().quarter() // 當前是第幾季度
let currentYear = moment().year() // 當前年

二、計算當前季度的開始日期。這個比較簡單,運用官方文件提供的教程,根據上一步求出來的年份和季度值,就可以寫出來:

moment(moment(currentYear + '-01-01').toDate()).quarter(currentQuarter)

三、計算結束時間:

let endMonth = 3 * parseInt(currentQuarter) //當季度最後一個月
/* 對月數進行格式化 */
if(endMonth < 10)
   endMonth = '0' + endMonth
else
   endMonth += ''

let endMonthDays = this.moment(currentYear + '-' + endMonth).daysInMonth(); // 末尾月天數
let endDays = currentYear + '-' + endMonth + '-' + endMonthDays //完整年月日整合
this.moment(endDays).toDate() // 計算結果

完。