Heim  >  Artikel  >  Web-Frontend  >  Warum liefert getMonth() in JavaScript den Wert des Vormonats?

Warum liefert getMonth() in JavaScript den Wert des Vormonats?

DDD
DDDOriginal
2024-10-19 13:17:01991Durchsuche

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

Warum gibt getMonth() von JavaScript den vorherigen Monat zurück?

Bei Verwendung einer Datumsauswahl, die ein Datum im Format „Sun Jul 7 00:00:00 EDT 2013“ bemerken Sie möglicherweise, dass die Methode getMonth() den vorherigen Monat zurückgibt. Zum Beispiel das folgende Code-Snippet:

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

Der Grund:

Der Grund für diese Diskrepanz liegt in der Tatsache, dass die getMonth()-Methode von JavaScript Monate a zuweist Nullbasierter Index. Daher wird dem Januar der Wert 0, dem Februar der Wert 1 usw. zugewiesen. Wenn getMonth() an einem Datum aufgerufen wird, das den Juli darstellt, wird tatsächlich der Wert für Juni (6) zurückgegeben.

Lösung:

Um den richtigen Monat zu erhalten, können Sie Folgendes tun: Verwenden Sie den folgenden angepassten Code:

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

Indem Sie 1 zum Ergebnis von getMonth() hinzufügen, versetzen Sie den nullbasierten Index und erhalten den Monat gemäß der Kalenderkonvention.

Das obige ist der detaillierte Inhalt vonWarum liefert getMonth() in JavaScript den Wert des Vormonats?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn