Maison  >  Article  >  interface Web  >  Pourquoi getMonth() de JavaScript donne-t-il la valeur du mois précédent ?

Pourquoi getMonth() de JavaScript donne-t-il la valeur du mois précédent ?

DDD
DDDoriginal
2024-10-19 13:17:01991parcourir

Why Does JavaScript's getMonth() Yield the Previous Month's Value?

Pourquoi getMonth() de JavaScript renvoie-t-il le mois précédent ?

Lors de l'utilisation d'un sélecteur de date qui fournit une date au format "Dim. 7 juillet 00:00:00 EDT 2013", vous remarquerez peut-être que la méthode getMonth() renvoie le mois précédent. Par exemple, l'extrait de code ci-dessous :

var d1 = new Date("Sun Jul 7 00:00:00 EDT 2013");
d1.getMonth(); //gives 6 instead of 7

La raison :

La raison de cet écart réside dans le fait que la méthode getMonth() de JavaScript attribue aux mois un indice de base zéro. Par conséquent, janvier se voit attribuer la valeur 0, février la valeur 1, et ainsi de suite. Lorsque vous appelez getMonth() à une date représentant juillet, il renvoie en fait la valeur du mois de juin (6).

Solution :

Pour obtenir le bon mois, vous pouvez utilisez le code ajusté suivant :

d1.getMonth() + 1; //returns the correct month, which is 7 for July

En ajoutant 1 au résultat de getMonth(), vous décalez l'index de base zéro et obtenez le mois selon la convention du calendrier.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn