Die Methode Date.prototype.toLocaleString() gibt ein Date-Objekt als lokalisierten String mit Datum UND Uhrzeit zurück. Sie kombiniert die Funktionalität von toLocaleDateString() und toLocaleTimeString() in einem Aufruf und ist die natürliche Wahl, wenn ein vollständiger Zeitstempel für die Anzeige benötigt wird – etwa in Tabellen, Logs oder Notification-Centern.
Funktionsweise
Wie toLocaleDateString() delegiert die Methode intern an Intl.DateTimeFormat. Per Default werden alle Komponenten (Jahr, Monat, Tag, Stunde, Minute, Sekunde) in der Locale-typischen Reihenfolge ausgegeben.
Über die options lässt sich die Ausgabe sehr fein steuern: Mit dateStyle und timeStyle als Kurzform, oder über die einzelnen Optionen year, month, day, hour, minute, second, weekday, timeZoneName etc.
Syntax
date.toLocaleString()
date.toLocaleString(locales)
date.toLocaleString(locales, options)locales (Optional) Ein BCP-47-Sprachcode (z. B. "de-DE") oder ein Array davon. Ohne Angabe wird die System-Default-Locale verwendet.
options (Optional) Ein Objekt mit Formatierungsoptionen:
dateStyle,timeStyle:"full"|"long"|"medium"|"short".year,month,day,weekday,hour,minute,second,timeZoneName: feingranulare Kontrolle.hour12:true|false– 12- oder 24-Stunden-Format.timeZone: z. B."UTC"oder"Europe/Berlin".
Rückgabewert
Ein lokalisierter String mit Datum und Uhrzeit.
Beispiele
Standard in deutscher Locale
const date = new Date("2026-05-01T14:30:00");
console.log(date.toLocaleString("de-DE"));1.5.2026, 14:30:00Locale-Vergleich
const date = new Date("2026-05-01T14:30:00");
console.log(date.toLocaleString("de-DE"));
console.log(date.toLocaleString("en-US"));
console.log(date.toLocaleString("fr-FR"));1.5.2026, 14:30:00
5/1/2026, 2:30:00 PM
01/05/2026 14:30:00Volle Form mit Wochentag und Zeitzone
const date = new Date("2026-05-01T14:30:00");
const text = date.toLocaleString("de-DE", {
dateStyle: "full",
timeStyle: "long"
});
console.log(text);Freitag, 1. Mai 2026 um 14:30:00 MESZ12-Stunden-Format mit AM/PM
const date = new Date("2026-05-01T14:30:00");
console.log(date.toLocaleString("de-DE", {
hour: "2-digit",
minute: "2-digit",
hour12: true
}));02:30 PMDatum in expliziter Zeitzone
const date = new Date("2026-05-01T14:30:00Z");
console.log(date.toLocaleString("de-DE", {
timeZone: "America/New_York",
timeZoneName: "short"
}));1.5.2026, 10:30:00 EDTHinweise & verwandte Methoden
- Für viele Datumsformatierungen in Schleifen ist
Intl.DateTimeFormatperformanter. - Für nur Datum:
toLocaleDateString(). Für nur Uhrzeit:toLocaleTimeString(). - Default-Locale ohne
locales-Argument hängt vom System ab – auf Servern oft unerwartet (z. B.en-US). Locale immer explizit angeben. - Für maschinenlesbare Ausgaben (APIs, Logs) ist
toISOString()die richtige Wahl, nichttoLocaleString().