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!
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