Javascript-Datumsobjekt: Eine Reise durch die Macken des Datums-Parsings
Ist das JavaScript-Datumsobjekt immer einen Tag frei? Nicht ganz, aber sein Verhalten kann sicherlich rätselhaft sein.
Seltsames Parsen des Datums
Beim Erstellen eines Date-Objekts aus einer Zeichenfolge weist JavaScript einige eigenartige Inkonsistenzen auf:
-
Monat-Tag-Jahr vs. Jahr-Monat-Tag: Datumsangaben im Format „24.09.2011“ (Monat-Tag-Jahr) werden korrekt interpretiert, während „24.09.2011“ (Jahr-Monat-Tag) um einen Tag verschoben ist.
-
Bindestrich vs. Schrägstrich: Ersetzen von Bindestrichen durch Schrägstriche in der Zeichenfolge („24.09.2011“) Behebt das Problem mit dem eintägigen Ruhetag im Jahr-Monat-Tag-Format.
-
Zeittrennzeichen „T“: Datumszeichenfolgen mit dem Trennzeichen „T“ (z. B. „2011-09-24T00). :00:00") müssen außerdem die Bindestriche in Schrägstriche geändert werden, damit sie analysiert werden können korrekt.
Alternative Methoden zur Datumserstellung
In einigen Fällen liefern alternative Methoden zum Erstellen von Datumsobjekten vorhersehbarere Ergebnisse:
-
Separate Argumente für den Konstruktor: Durch Übergabe separater Argumente für Jahr, Monat und Tag (z. B. neues Datum(2011, 0)) können Sie bestimmte Daten genau bestimmen.
-
Nullbasierte Indizierung: Monate in JavaScript sind nullindiziert, denken Sie also daran, entsprechende Anpassungen vorzunehmen (z. B. „02 " für März).
Hinweis: Diese Verhaltensweisen sind spezifisch für das Datum von JavaScript wird analysiert und kann je nach lokaler Zeitzone und Browsereinstellungen variieren.
Das obige ist der detaillierte Inhalt vonWarum ist mein JavaScript-Datumsobjekt manchmal einen Tag frei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!