From 0395fde19a7a56d30a8827df5e360f7360ad8f5c Mon Sep 17 00:00:00 2001 From: Angelos Chalaris Date: Fri, 7 Aug 2020 15:15:26 +0300 Subject: [PATCH] Add getMonthsDiffBetweenDates --- snippets/getMonthsDiffBetweenDates.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 snippets/getMonthsDiffBetweenDates.md diff --git a/snippets/getMonthsDiffBetweenDates.md b/snippets/getMonthsDiffBetweenDates.md new file mode 100644 index 000000000..d2abb56ed --- /dev/null +++ b/snippets/getMonthsDiffBetweenDates.md @@ -0,0 +1,22 @@ +--- +title: getMonthsDiffBetweenDates +tags: date,intermediate +--- + +Returns the difference (in months) between two dates. + +Use `Date.prototype.getFullYear()` and `Date.prototype.getMonth()` to calculate the difference (in months) between two `Date` objects. + +```js +const getMonthsDiffBetweenDates = (dateInitial, dateFinal) => + Math.max( + (dateFinal.getFullYear() - dateInitial.getFullYear()) * 12 + + dateFinal.getMonth() - + dateInitial.getMonth(), + 0 + ); +``` + +```js +getMonthsDiffBetweenDates(new Date('2017-12-13'), new Date('2018-04-29')); // 4 +```