Date.parse()
Die korrekte Verarbeitung von Datums- und Zeitangaben ist in der Webentwicklung von zentraler Bedeutung. JavaScript bietet dafür mit Date.parse()
eine Funktion, die einen Datums-String analysiert und in eine Zeitangabe in Millisekunden umwandelt. Dies erleichtert unter anderem die Vergleichbarkeit von Daten, das Berechnen von Zeitdifferenzen und weitere zeitbezogene Operationen. In diesem Artikel gehen wir Schritt für Schritt auf die Funktionsweise, Syntax sowie praktische Beispiele dieser Methode ein.
Funktionsweise
Date.parse()
nimmt einen String, der ein Datum repräsentiert, entgegen und versucht, diesen anhand eines standardisierten Datumsformats (einem vereinfachten ISO 8601-Format) in die Anzahl der Millisekunden seit dem 1. Januar 1970, 00:00:00 UTC umzuwandeln.
Folgendes gilt:
- Erfolgreiche Konvertierung: Gibt die Millisekunden als numerischen Wert zurück.
- Fehlerhafte Angabe: Liefert NaN (Not-a-Number), wenn das Datum nicht korrekt analysiert werden kann.
Ein wichtiger Punkt ist, dass Date.parse() für konsistente Ergebnisse auf korrekt formatierte Strings angewiesen ist. In vielen Fällen werden standardisierte Datumsformate wie YYYY-MM-DD oder YYYY-MM-DDTHH:mm:ss.sssZ bevorzugt, um Missverständnisse zu vermeiden.
Syntax
Date.parse(dateString);
dateString
Ein String, der ein Datum repräsentiert. Dieser String muss möglichst dem ISO 8601-Format entsprechen, um eine zuverlässige Analyse zu gewährleisten.
Beispiele
Einfache ISO 8601-Datumsangabe
Ein häufig genutztes Format ist das ISO 8601-Format.
let timestamp = Date.parse("2025-04-08T12:30:00Z");
console.log(timestamp);
1744115400000
Das Z am Ende zeigt, dass es sich um die UTC-Zeit handelt.
Datumsangabe ohne Zeit
Manchmal wird nur das Datum ohne Zeitangabe übergeben. Zu beachten ist, dass das Ergebnis häufig auf Mitternacht (00:00:00) eingestellt wird, je nach Browser kann dies aber auch interpretativ variieren.
let timestamp = Date.parse("2025-04-08");
console.log(timestamp);
1744070400000
Verwendung mit expliziter Zeitzone
let timestamp = Date.parse("2025-04-08T12:30:00+02:00");
console.log(timestamp);
1744108200000
Ungültige Eingabe
Bei ungültiger Eingabe, wenn das Datum nicht geparsed werden kann, wird ein NaN
zurückgegeben.
let invalidTimestamp = Date.parse("Ungültiges Datum");
console.log(invalidTimestamp);
NaN