1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- import toDate from "../toDate/index.js";
- import differenceInCalendarYears from "../differenceInCalendarYears/index.js";
- import compareAsc from "../compareAsc/index.js";
- import requiredArgs from "../_lib/requiredArgs/index.js";
- export default function differenceInYears(dirtyDateLeft, dirtyDateRight) {
- requiredArgs(2, arguments);
- var dateLeft = toDate(dirtyDateLeft);
- var dateRight = toDate(dirtyDateRight);
- var sign = compareAsc(dateLeft, dateRight);
- var difference = Math.abs(differenceInCalendarYears(dateLeft, dateRight));
-
- dateLeft.setFullYear(1584);
- dateRight.setFullYear(1584);
-
- var isLastYearNotFull = compareAsc(dateLeft, dateRight) === -sign;
- var result = sign * (difference - Number(isLastYearNotFull));
- return result === 0 ? 0 : result;
- }
|