index.js 1.1 KB

12345678910111213141516171819202122232425262728
  1. import startOfISOWeekYear from "../startOfISOWeekYear/index.js";
  2. import requiredArgs from "../_lib/requiredArgs/index.js";
  3. /**
  4. * @name isSameISOWeekYear
  5. * @category ISO Week-Numbering Year Helpers
  6. * @summary Are the given dates in the same ISO week-numbering year?
  7. *
  8. * @description
  9. * Are the given dates in the same ISO week-numbering year?
  10. *
  11. * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date
  12. *
  13. * @param {Date|Number} dateLeft - the first date to check
  14. * @param {Date|Number} dateRight - the second date to check
  15. * @returns {Boolean} the dates are in the same ISO week-numbering year
  16. * @throws {TypeError} 2 arguments required
  17. *
  18. * @example
  19. * // Are 29 December 2003 and 2 January 2005 in the same ISO week-numbering year?
  20. * const result = isSameISOWeekYear(new Date(2003, 11, 29), new Date(2005, 0, 2))
  21. * //=> true
  22. */
  23. export default function isSameISOWeekYear(dirtyDateLeft, dirtyDateRight) {
  24. requiredArgs(2, arguments);
  25. var dateLeftStartOfYear = startOfISOWeekYear(dirtyDateLeft);
  26. var dateRightStartOfYear = startOfISOWeekYear(dirtyDateRight);
  27. return dateLeftStartOfYear.getTime() === dateRightStartOfYear.getTime();
  28. }