diff --git a/snippets/quarterOfYear.md b/snippets/quarterOfYear.md new file mode 100644 index 000000000..57f81b726 --- /dev/null +++ b/snippets/quarterOfYear.md @@ -0,0 +1,23 @@ +--- +title: quarterOfYear +tags: date,beginner +--- + +Returns the quarter and year to which the supplied date belongs to. + +- Use `Date.prototype.getMonth()` to get the current month in the range (0, 11), add `1` to map it to the range (1, 12). +- Use `Math.ceil()` and divide the month by `3` to get the current quarter. +- Use `Date.prototype.getFullYear()` to get the year from the given date. +- Omit the argument, `date`, to use the current date by default. + +```js +const quarterOfYear = (date = new Date()) => [ + Math.ceil((date.getMonth() + 1) / 3), + date.getFullYear(), +]; +``` + +```js +quarterOfYear(new Date('07/10/2018')); // [ 3, 2018 ] +quarterOfYear(); // [ 4, 2020 ] +```