UNPKG

sugar

Version:

A Javascript utility library for working with native objects.

30 lines (26 loc) 865 B
'use strict'; var LocaleHelpers = require('../var/LocaleHelpers'), getYear = require('./getYear'), getMonth = require('./getMonth'), getWeekNumber = require('./getWeekNumber'); var localeManager = LocaleHelpers.localeManager; function getWeekYear(d, localeCode, iso) { var year, month, firstDayOfWeek, firstDayOfWeekYear, week, loc; year = getYear(d); month = getMonth(d); if (month === 0 || month === 11) { if (!iso) { loc = localeManager.get(localeCode); firstDayOfWeek = loc.getFirstDayOfWeek(localeCode); firstDayOfWeekYear = loc.getFirstDayOfWeekYear(localeCode); } week = getWeekNumber(d, false, firstDayOfWeek, firstDayOfWeekYear); if (month === 0 && week === 0) { year -= 1; } else if (month === 11 && week === 1) { year += 1; } } return year; } module.exports = getWeekYear;