Signatur
Beschreibung
Die statische Methode Date.parse() parst eine String-Darstellung eines Datums und gibt den Timestamp des Datums zurück.
Diese Funktion ist nützlich, um Datumswerte auf Grundlage von String-Werten zu setzen, zum Beispiel in Verbindung mit der Methode setTime().
Die Formate, die parse() verarbeiten kann, sind nicht explizit spezifiziert, aber es gibt einige Invarianten:
- Das Date-Time-String-Format (erzeugt durch
toISOString()) muss unterstützt werden. - Wenn
xein beliebiges Date ist, dessen Millisekunden-Anteil null ist, dann solltex.valueOf()gleich einem der folgenden Werte sein:Date.parse(x.toString()),Date.parse(x.toUTCString()),Date.parse(x.toISOString()). Das bedeutet, dass die vontoString()undtoUTCString()erzeugten Formate ebenfalls unterstützt werden sollten. - Die Spezifikation verlangt keine Unterstützung für das von
toLocaleString()erzeugte Format. Alle wichtigen Engines versuchen jedoch, dastoLocaleString("en-US")-Format zu unterstützen.
Andere Formate sind implementierungsabhängig und funktionieren möglicherweise nicht in allen Browsern. Eine Bibliothek kann helfen, wenn viele verschiedene Formate berücksichtigt werden müssen. Tatsächlich ist die Unzuverlässigkeit von Date.parse() eine der Motivationen für die Einführung der Temporal-API.
Da parse() eine statische Methode von Date ist, verwendet man sie immer als Date.parse() und nicht als Methode eines erzeugten Date-Objekts.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $dateString Pflicht | string | — | Ein String im Date-Time-String-Format. Hinweise zur Verwendung unterschiedlicher Formate finden sich in der verlinkten Referenz. |
Rückgabewert
dateString nicht als gültiges Datum geparst werden kann, wird NaN zurückgegeben.Beispiele
Verwendung von Date.parse()
Date.parse("2019-01-01");
Date.parse("2019-01-01T00:00:00.000Z");
Date.parse("2019-01-01T00:00:00.000+00:00");
Ohne Zeitzone
Date.parse("2019-01-01T00:00:00");
toString()- und toUTCString()-Formate
// toString() format
Date.parse("Thu Jan 01 1970 00:00:00 GMT-0500 (Eastern Standard Time)");
// 18000000 in all implementations in all timezones
// toUTCString() format
Date.parse("Thu, 01 Jan 1970 00:00:00 GMT");
// 0 in all implementations in all timezones