2010-11-15 12 views
11

J'essaie d'obtenir le nom du jour en javascript. Chaque fois que je recherche l'utilisation de la fonction getDay(), il est expliqué que cette méthode retourne le jour de la semaine, par exemple: 0 est dimanche, 1 est lundi, etc.Problème avec la méthode getDay() javascript

Ainsi, le 1er Janauary 2010 était un vendredi, quelqu'un peut-il expliquer pourquoi je reçois 1 au lieu de 5? Pareil pour le 2 janvier 2010, j'obtiens 2 au lieu de 5.

J'ai essayé plusieurs façons de le faire sans succès.

Voici mon code:

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

Merci !!!

Répondre

14

Le mois dans JS est basé sur zéro, tout comme le jour de la semaine.

Date (2010,01,01) est le 1er février 2010. Janvier est le mois zéro. Effectivement, le 1er février 2010 était un lundi (je m'en souviens bien).

Essayez ceci:

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

Le mois commence à 0, donc ce que vous faites est d'essayer de trouver le 1 février 2010 qui est un lundi. Ce serait correct:

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