Цитата:
Сообщение от
mazzy
и уж точно не стоит использовать магию в стиле "7 + ... - 7"
Ага. Я пытался понять логику автора, но до конца у меня это не получилось. Видимо предполагалось вычислять то длинное выражение в несколько этапов:
(7 - firstDayofWeek + 1) это явно длина первой недели. Но дальше уже не все так прозрачно
Цитата:
Сообщение от
mazzy
return dateStartWeek(firstJanuary + (_week * 7));
Нужно использовать week-1, если хотим нумеровать недели с единицы, а не с нуля.
И ещё я бы вынес год в параметры функции (можно по умолчанию сделать равным текущему).