Heim > Web-Frontend > js-Tutorial > Warum gibt mein Javascript-Datumsobjekt ein falsches Datum zurück?

Warum gibt mein Javascript-Datumsobjekt ein falsches Datum zurück?

DDD
Freigeben: 2024-12-06 08:17:11
Original
289 Leute haben es durchsucht

Why Does My Javascript Date Object Return an Incorrect Date?

Verursacht ein Javascript-Datumsobjekt eine Diskrepanz mit Datumsangaben?

In Ihrer Javascript-Anwendung folgt das gespeicherte Datum einem bestimmten Format , „24.09.2011.“ Beim Versuch, mit diesem Wert ein neues Datumsobjekt zu erstellen, ist ein Problem aufgetreten, bei dem das zurückgegebene Datum durchweg einen Tag später liegt.

Grundlegendes zum Verhalten des Datumsobjekts

Um diese Diskrepanz zu untersuchen, ist es wichtig zu verstehen, wie das JS-Datumsobjekt Zeichenfolgeneingaben interpretiert. Das Date-Objekt weist beim Konvertieren verschiedener Datumszeichenfolgenformate bestimmte Anomalien auf. Sehen wir uns ein paar Beispiele an:

Die Parsing-Logik des Datumsobjekts verstehen

Wenn Sie ein Datumsobjekt mit der Zeichenfolge „2011-09-24“ erstellen, wird die Das Datumsobjekt interpretiert es als Zeitstempel, der den 23. September 2011 um 17:00:00 Uhr darstellt GMT-0400 (östliche Sommerzeit). Folglich liegt das zurückgegebene Datum einen Tag von Ihrem erwarteten Ergebnis entfernt.

Wenn Sie jedoch das Zeichenfolgenformat in „24.09.2011“ ändern (in „Monat-Tag-Jahr“ wechseln), wird das Datumsobjekt korrekt angezeigt interpretiert und gibt den 24. September 2011 zurück.

Berücksichtigung für anderes Datum Formate

Eine weitere interessante Beobachtung ist die Unterscheidung zwischen der Verwendung von Bindestrichen (-) und Schrägstrichen (/) in der Datumszeichenfolge. Das Ändern der Trennzeichen in Schrägstriche führt zu einer genauen Datumsanalyse, wie am Beispiel „24.09.2011“ zu sehen ist.

Adressieren komplexer Datumszeichenfolgen

Für Für Datumszeichenfolgen, die zusätzliche Informationen wie Uhrzeit oder Zeitzone enthalten, gelten etwas andere Parsing-Regeln. Beispielsweise ergibt „2011-09-24T00:00:00“ immer noch ein falsches Datum, aber das Ersetzen des Bindestrichs durch einen Schrägstrich und das Entfernen des Zeitanteils führt zum gewünschten Ergebnis.

Alternative Datumskonstruktionsmethoden

Wenn Sie beim Parsen bestimmter Datumszeichenfolgenformate auf Schwierigkeiten stoßen, können Sie diese ebenfalls verwenden der separate Parameteransatz für den Date-Konstruktor. Mit dieser Methode können Sie Argumente für Jahr, Monat, Tag und sogar Uhrzeit und Zeitzone angeben, wie in den bereitgestellten Beispielen zu sehen ist.

Aus Gründen der Klarheit ist es erwähnenswert, dass die dargestellten Beispiele je nach Ihrem Standort ein unterschiedliches Verhalten zeigen können aktuelle Zeitzone und Uhrzeit.

Das obige ist der detaillierte Inhalt vonWarum gibt mein Javascript-Datumsobjekt ein falsches Datum zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage