12345678910111213141516171819202122232425262728 |
- import toDate from "../toDate/index.js";
- import requiredArgs from "../_lib/requiredArgs/index.js";
- /**
- * @name endOfYear
- * @category Year Helpers
- * @summary Return the end of a year for the given date.
- *
- * @description
- * Return the end of a year for the given date.
- * The result will be in the local timezone.
- *
- * @param {Date|Number} date - the original date
- * @returns {Date} the end of a year
- * @throws {TypeError} 1 argument required
- *
- * @example
- * // The end of a year for 2 September 2014 11:55:00:
- * const result = endOfYear(new Date(2014, 8, 2, 11, 55, 00))
- * //=> Wed Dec 31 2014 23:59:59.999
- */
- export default function endOfYear(dirtyDate) {
- requiredArgs(1, arguments);
- var date = toDate(dirtyDate);
- var year = date.getFullYear();
- date.setFullYear(year + 1, 0, 0);
- date.setHours(23, 59, 59, 999);
- return date;
- }
|