travel/admin/node_modules/date-fns/difference_in_calendar_quar.../index.js

34 lines
1.0 KiB
JavaScript
Raw Normal View History

2024-06-24 11:28:18 +08:00
var getQuarter = require('../get_quarter/index.js')
var parse = require('../parse/index.js')
/**
* @category Quarter Helpers
* @summary Get the number of calendar quarters between the given dates.
*
* @description
* Get the number of calendar quarters between the given dates.
*
* @param {Date|String|Number} dateLeft - the later date
* @param {Date|String|Number} dateRight - the earlier date
* @returns {Number} the number of calendar quarters
*
* @example
* // How many calendar quarters are between 31 December 2013 and 2 July 2014?
* var result = differenceInCalendarQuarters(
* new Date(2014, 6, 2),
* new Date(2013, 11, 31)
* )
* //=> 3
*/
function differenceInCalendarQuarters (dirtyDateLeft, dirtyDateRight) {
var dateLeft = parse(dirtyDateLeft)
var dateRight = parse(dirtyDateRight)
var yearDiff = dateLeft.getFullYear() - dateRight.getFullYear()
var quarterDiff = getQuarter(dateLeft) - getQuarter(dateRight)
return yearDiff * 4 + quarterDiff
}
module.exports = differenceInCalendarQuarters