2010-11-15 12 views
11

Próbuję uzyskać nazwę dnia w javascript. każdym razem wyszukiwać za korzystanie z funkcji getDay(), wyjaśnione jest, że metoda ta zwraca dzień tygodnia, na przykład: 0 jest niedziela, 1 jest poniedziałek itdProblem z metodą getDay() javascript

Więc 1st janauary 2010 był piątek, Czy ktoś może wyjaśnić, dlaczego otrzymuję 1 zamiast 5? To samo dla 2 stycznia 2010, otrzymuję 2 zamiast 5.

Próbowałem kilka sposobów, aby to zrobić bez powodzenia.

Oto mój kod:

theDay = new Date(2010,01,01); 
alert(theDay.getDay()); 

Dziękuję !!!

Odpowiedz

14

Miesiąc w JS jest oparty na zera, podobnie jak dzień tygodnia.

Data (2010.01.01) to 1 lutego 2010 r. Styczeń to miesiąc zero. Rzeczywiście, 1 lutego 2010 był poniedziałkiem (dobrze pamiętam).

Spróbuj tego:

var theDay = new Date(2010,00,01); 
alert(theDay.getDay()); 
8

Miesiąc rozpoczyna się od 0, więc co robisz próbuje znaleźć lut 1st, 2010, który jest poniedziałek. To byłoby poprawne:

theDay = new Date(2010,0,01); 
alert(theDay.getDay()); 
Powiązane problemy