Dieser Artikel beantwortet schnell auf das Problem der Jahre, auf die Fehler bei der Deklaration von Daten auftreten können. Möglicherweise haben Sie eine Situation wie "JavaScript Date kehrt in die zukünftigen Jahre zurück, ich sehe 2012 statt 2011, was ist los?" Bitte beachten Sie das folgende Beispiel: Das Zieldatum ist Freitag, 15. Juli 2011.
var todaysDate = new Date(); console.log(todaysDate); //输出:Date {Fri Aug 12 2011 18:45:53 GMT+1000} var expiryDate = new Date('15/07/2011'); console.log(expiryDate); //输出:Date {Wed Mar 07 2012 00:00:00 GMT+1000} var expiryDate = new Date('07/15/2011'); console.log(expiryDate); //输出:Date {Fri Jul 15 2011 00:00:00 GMT+1000}
Was ist das Problem? Die Funktion von JavaScript von 0 (0 repräsentiert Januar, 1 steht im Februar und so weiter), aber das ist nicht der einzige Grund für den Jahr -Fehler! Wenn wir versuchen, das Datum mit einem einzelnen Parameter zu analysieren, erhalten wir nicht das richtige Ergebnis. getMonth()
var expiryDate = new Date(2011, 15, 07); console.log(expiryDate); //输出:Date {Sat Apr 07 2012 00:00:00 GMT+1000}
var expiryDate = new Date('July 15, 2011'); console.log(expiryDate); //输出:Date {Fri Jul 15 2011 00:00:00 GMT+1000}
FAQs über JavaScript -Datumsfunktionen (FAQs)
Warum zeigt JavaScript das falsche Jahr an, wenn diegetYear()
-Methode in JavaScript gibt das Jahr des Datums zurück, das eine doppelte Ziffer ist und das Ergebnis des Subtrahierens von 1900 vom tatsächlichen Jahr ist. Wenn das Jahr beispielsweise 2022 ist, gibt getYear()
122 zurück. Dies kann zu Verschleierung und Datenrepräsentationsfehlern führen. Um dies zu vermeiden, wird empfohlen, die getYear()
-Methode zu verwenden, die das gesamte vierstellige Jahr zurückgibt. getFullYear()
getYear()
in JavaScript? getFullYear()
Der Hauptunterschied zwischen und getYear()
ist das Rückgabeformat des Jahres. getFullYear()
gibt das Ergebnis des Jahres minus 1900 jahrelang nach dem Jahr 2000 zurück. Das Ergebnis ist eine doppelte Ziffer. Auf der anderen Seite gibt getYear()
das vierte vierstellige Jahr zurück, was es genauer macht und weniger wahrscheinlich verwirrt ist. getFullYear()
getYear()
-Methode zurückgegebene Jahr zu korrigieren, fügen Sie 1900 zu dem Ergebnis hinzu. Es wird jedoch im Allgemeinen empfohlen, stattdessen die getYear()
-Methode zu verwenden, da das richtige vierstellige Jahr direkt zurückgibt. getFullYear()
getYear()
Der Grund für die Gestaltung der -Methode hängt mit dem Y2K -Problem zusammen. Dieses Design kann jedoch Verwirrung und Fehler verursachen, sodass die getYear()
-Methode im Allgemeinen empfohlen wird. getFullYear()
getYear()
-Methode addieren, wird normalerweise empfohlen, die getYear()
-Methode zu verwenden, da sie das richtige vierstellige Jahr direkt zurückgibt. getFullYear()
Sie können das aktuelle Jahr erhalten, indem Sie ein neues Date
-Objekt erstellen und die getFullYear()
-Methode darauf aufrufen. Zum Beispiel: let currentYear = new Date().getFullYear();
getYear()
und getFullYear()
? getYear()
als auch getFullYear()
geben eine Zahl zurück, die das Jahr darstellt. getYear()
kehrt das Ergebnis des Jahres minus 1900 zurück, während getFullYear()
das gesamte vierstellige Jahr zurückgibt.
getYear()
und getFullYear()
auf Null wie JavaScript -Arrays basierend? nein, getYear()
und getFullYear()
Methoden basieren nicht auf Null. Sie erwidern das eigentliche Jahr, obwohl getYear()
1900 davon abziehen wird.
getYear()
und getFullYear()
zukünftigen oder vergangenen Daten anwenden? Ja, Sie können Date
und getYear()
Methoden für jedes gültige getFullYear()
-Objekt verwenden, unabhängig davon, ob das Datum in Zukunft oder in der Vergangenheit liegt.
getYear()
und getFullYear()
Browserkompatibilität? getYear()
und getFullYear()
werden in allen modernen Browsern gut unterstützt. Da jedoch getYear()
Verwirrung und Fehler verursachen kann, wird im Allgemeinen empfohlen, getFullYear()
zu verwenden.
Das obige ist der detaillierte Inhalt vonJavaScript zeigt ein falsches Jahr für das Datum. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!