Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Узнать день недели (https://javascript.ru/forum/misc/9390-uznat-den-nedeli.html)

Kiev 13.05.2010 22:51

Узнать день недели
 
Приветствие всем!
У меня вопрос, как узнать день недели если известны номер месяца и дня,
допустим на 2010 год. Например 22 числа, 3-его месяца(марта) 2010 года - понедельник( 22.03.2010 - это понедельник). Как узнать, например, какой день недели 9 мая 2010 года?? Помогите, пожалуйста.:help: Без объектов Date()

subzey 13.05.2010 23:28

Лабораторная что ли?
Считайте количество дней, прошедших с 1970 года (или 2000, или 1900, по вкусу), приплюсовывайте день недели 1 января года-начала отсчета и берите остаток от деления.
Просто итеративно, с учетом количества дней в году и месяце.

e1f 14.05.2010 00:06

subzey, Вы что?
(new Date()).getDay()


UPD Мда, руки оторвать давшему задачу, ну а потом так, как написал subzey :)

Kiev 14.05.2010 00:08

subzey,
Мне можно считать кол-во прошедших дней с любого года, например с 1 янв. 2010 года, так вот я делаю так:
с 1-го января по 9 мая прошло: (январь+февраль+март+апрель + 9 мая)%7. Затем беру остаток, если остаток равен 0 - значит воскрсенье и тд. Но почему-то неверно день недели показывает...(

e1f 14.05.2010 00:11

Kiev, код выложите. Високосные года учитываете?

Kiev 14.05.2010 00:16

e1f,
Вот:
var dneiproshlo=0,mai=9;
dneiproshlo=(31+28+31+30+mai)%7;
switch(dneiproshlo)
{
  case 0:alert("Воскресенье");break;
  case 1:alert("Понедельник");break;
  case 2:alert("Вторник");break;
  case 3:alert("Среда");break;
  case 4:alert("Четверг");break;
  case 5:alert("Пятница");break;
  case 6:alert("Суббота");break;
}

Kiev 14.05.2010 00:18

e1f,
Я так понял здесь надо год ещё как-то считать? Я считаю кол-во прошедших дней с 2010 года, вроде должно верно всё выводить

e1f 14.05.2010 00:27

Kiev, а с чего Вы решили, что год начинается с воскресенья? Оо

Kiev 14.05.2010 01:02

e1f,
Ага, вот в чём подвох, нужно узнать какой день недели начинался с 1 января 2010 года, допустим если этот день пятница, значит если остаток будет 0 - это пятница и тд? Если так , то как это написать в скрипте, помогите))

Octane 14.05.2010 01:10

http://javascript.ru/date

alert(["Вс", "Пн", "Вт", "Ср", "Чт", "Пт", "Сб"][new Date(2010, 0, 1).getDay()])


Часовой пояс GMT +3, время: 09:58.