Beim Versuch, eine Datumszeichenfolge mit dem neuen Date()-Konstruktor in ein Date-Objekt zu konvertieren, kann das Verhalten variieren je nach Browser. Dies wird besonders deutlich, wenn es um UTC-Datumszeichenfolgen (koordinierte Weltzeit) geht.
Im bereitgestellten Codeausschnitt:
var date = new Date('2013-02-27T17:00:00'); alert(date);
Chrome interpretiert die Eingabezeichenfolge als Ortszeit und passt sie entsprechend an abhängig von der Zeitzone des Browsers. In diesem Fall interpretiert es die Zeit als 00:00 Uhr Ortszeit am 28. Februar 2013.
Firefox hingegen analysiert die Zeichenfolge als UTC-Zeit und zeigt sie entsprechend an. In diesem Fall wird die Uhrzeit korrekt als 17:00 Uhr (GMT 7:00) am 27. Februar 2013 angezeigt.
Um ein konsistentes Verhalten in allen Browsern sicherzustellen, ist es wichtig, die Datumszeichenfolge in der richtigen UTC anzugeben Format. Das standardisierte Format für UTC ist ISO 8601, das ein „Z“-Suffix zur Angabe der UTC-Zeit enthält:
2013-02-27T17:00:00Z
Durch Anhängen von „Z“ an die Eingabe Zeichenfolge können Sie sicherstellen, dass sowohl Chrome als auch Firefox die Datumszeichenfolge als UTC-Zeit interpretieren, was zur gleichen Ausgabe führt:
var date = new Date('2013-02-27T17:00:00Z'); alert(date);
Ausgabe:
Mittwoch, 27. Februar 2013, 17:00 Uhr :00 GMT 0700 (SE Asia Standard Time)
Das obige ist der detaillierte Inhalt vonWarum interpretiert „new Date()' UTC-Zeichenfolgen in Chrome und Firefox unterschiedlich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!