Показать сообщение отдельно
  #1 (permalink)  
Старый 24.12.2010, 12:21
Новичок на форуме
Отправить личное сообщение для zhulanov Посмотреть профиль Найти все сообщения от zhulanov
 
Регистрация: 24.12.2010
Сообщений: 2

По номеру недели получить дату понедельника этой недели
Здравствуйте.
Есть номер недели в году, например 2, нужно получить дату понедельника в этой неделе.

Мой вариант ниже, но дело в том, что он работает не корректно. Буду рад любой помощи)

Если задать wnum = 1 (номер недели = 1), то результатом работы скрипта будет дата будет Sat Jan 02 2010 14:26:11 GMT+0500, что совсем не то, т.к. понедельник первой недели 2010 года - это 4 января, и уж никак не второе.

//Номер недели
var wnum = 1;

//Количество дней от 1 января до понедельника этой недели
var countdays = wnum * 7 - 6;

//1 января текущего года
var firstDayOfCurYear = new Date();
firstDayOfCurYear.setFullYear(firstDayOfCurYear.getFullYear(), 0, 1);

//Точная дата понедельника для заданной недели
var dateOfMondayInWeek = new Date(firstDayOfCurYear.valueOf() + countdays * 24 * 60 * 60 * 1000);

Последний раз редактировалось zhulanov, 24.12.2010 в 13:01.
Ответить с цитированием