Показать сообщение отдельно
  #4 (permalink)  
Старый 17.10.2011, 20:13
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

Я бы рекомендовал вместо 2х массивов monthdays, и monthnames
писать
month=[{name:"Января",	monthdays:31},{name:"Февраля",monthdays:31},и тд ]

так будет по понятнее.

Что касается дней недели.
Этот алгоритм корректно работает с датами, позже 1583 года.
Ибо новый стиль был впервые введён только в 1582.

function getDay(day,mon,year){
 var days = new Array("воскресенье","понедельник","вторник","среда","четверг","пятница","суббота");
 day=parseInt(day); //если день двухсимвольный и <10 
 mon=parseInt(mon); //если месяц двухсимвольный и <10 
 var a=parseInt((14-mon)/12);
 var y=year-a;
 var m=mon+12*a-2;
 var d=(7000+parseInt(day+y+parseInt(y/4)-parseInt(y/100)+parseInt(y/400)+(31*m)/12))%7;
 return days[d];
}
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 18.10.2011 в 13:12.
Ответить с цитированием