/
index.js
29 lines (28 loc) · 1.23 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import getISOYear from '../getISOYear/index.js'
import setISOYear from '../setISOYear/index.js'
/**
* @name addISOYears
* @category ISO Week-Numbering Year Helpers
* @summary Add the specified number of ISO week-numbering years to the given date.
*
* @description
* Add the specified number of ISO week-numbering years to the given date.
*
* ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date
*
* @param {Date|String|Number} date - the date to be changed
* @param {Number} amount - the amount of ISO week-numbering years to be added
* @param {Options} [options] - the object with options. See [Options]{@link docs/Options}
* @param {0|1|2} [options.additionalDigits=2] - passed to `toDate`. See [toDate]{@link docs/toDate}
* @returns {Date} the new date with the ISO week-numbering years added
* @throws {RangeError} `options.additionalDigits` must be 0, 1 or 2
*
* @example
* // Add 5 ISO week-numbering years to 2 July 2010:
* var result = addISOYears(new Date(2010, 6, 2), 5)
* //=> Fri Jun 26 2015 00:00:00
*/
export default function addISOYears (dirtyDate, dirtyAmount, dirtyOptions) {
var amount = Number(dirtyAmount)
return setISOYear(dirtyDate, getISOYear(dirtyDate, dirtyOptions) + amount, dirtyOptions)
}