--- title: Date.prototype.toLocaleDateString() slug: Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString tags: - Date - IANA Timezone Forma - Internationalization - JavaScript - Method - Prototype - Reference translation_of: Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString ---
Die toLocaleDateString()
Methode gibt einen sprachsensitiven String mit dem Datumsteil des Zeitpunktes zurück. Die neuen Argumente locales
und options
können eingesetzt werden, um die Sprache (und damit die Formatierung) einzustellen oder benutzerdefinierte Formatierungen vorzunehmen. In älteren Implementierungen, die locales
und options
ignorieren, ist die Formatierung des String implementierungsabhängig.
dateObj.toLocaleDateString([locales [, options]])
Überprüfe das Kapitel {{anch("Browser_compatibility", "Browserkompatibilität")}}, um zu erfahren, welcher Browser die Argumente locales
and options
unterstützt. Zudem sollte das Beispiel {{anch("Checking_for_support_for_locales_and_options_arguments", "Unterstützung der Argumente locales
und options
")}} beachtet werden.
weekday
, year
, month
, day
{{jsxref("undefined")}} sind, sind die Eigenschaften year
, month
, und day
"numeric"
.Einen String, der den Datumsteil des gegebenen {{jsxref("Date")}} Objektes mit sprachspezifischen Konventionen repräsentiert.
toLocaleDateString()
Standardeinsatz ohne Angaben zur Sprache und Formatierung. Ein formatierter String in der Standardsprache mit Standardoption wird zurückgegeben.
var date = new Date(Date.UTC(2012, 11, 12, 3, 0, 0)); // toLocaleDateString() ohne Argumente abhängig von der Implementierung, // der Standardsprache und der Standardzeitzone. console.log(date.toLocaleDateString()); // → "12/11/2012" wenn in der Sprache en-US mit America/Los_Angeles Zeitzone ausgeführt
locales
und options
Die Argumente locales
and options
sind noch nicht in allen Browsern unterstützt. Um herauszufinden, ob eine Implementierung die Argumente unterstützt, kann die Anforderung benutzt werden, dass bei nicht existierenden Sprachen ein {{jsxref("RangeError")}} erzeugt wird:
function toLocaleDateStringSupportsLocales() { try { new Date().toLocaleDateString('i'); } catch (e) { return e.name === 'RangeError'; } return false; }
locales
Das Beispiel zeigt einige Variation von internationalisierten Datumsformaten. Um das Format der Sprache der Benutzerschnittstelle (z. B. Webseite) zu bekommen, muss die Sprache (und manchmal eine Fallback-Sprache) mit dem Argument locales
gesetzt werden:
var date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));
// Die unteren Formate setzen ein lokale Zeitzone voraus:
// America/Los_Angeles für die US
// US Englischer Einsatz von Monat-Tag-Jahr
console.log(date.toLocaleDateString('en-US'));
// → "12/19/2012"
// British Englischer Einsatz von Tag-Monat-Jahr
console.log(date.toLocaleDateString('en-GB'));
// → "20/12/2012"
// Koreanischer Einsatz von Jahr-Monat-Tag
console.log(date.toLocaleDateString('ko-KR'));
// → "2012. 12. 20."
// Event für Persien. Es ist schwer manuell in Solar Hijri zu konvertieren
console.log(date.toLocaleDateString('fa-IR'));
// → "۱۳۹۱/۹/۳۰"
// In den meisten arabischen Ländern werden arabische Ziffern genutzt.
console.log(date.toLocaleDateString('ar-EG'));
// → "٢٠/١٢/٢٠١٢"
// Für mansche japanische Anwendungen wird er japanische Kalender benutzt,
// bei dem das Jahr 2012 das Jahr 24 der Heisei-Zeit ist.
console.log(date.toLocaleDateString('ja-JP-u-ca-japanese'));
// → "24/12/20"
// Wenn eine Sprache angegeben wird, die vielleicht nicht unterstützt wird,
// wie Balinesisch, wird eine fallback Sprache (Indonesisch) definiert.
console.log(date.toLocaleDateString(['ban', 'id']));
// → "20/12/2012"
options
Das Ergebnis der toLocaleDateString()
Methode kann benutzerdefiniert mit dem Argument options
beeinflusst werden.
var date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0)); // Gibt einen Wochentag und ein langes Datum zurück. var options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' }; console.log(date.toLocaleDateString('de-DE', options)); // → "Donnerstag, 20. Dezember 2012" // Macht UTC sichtbar options.timeZone = 'UTC'; options.timeZoneName = 'short'; console.log(date.toLocaleDateString('en-US', options)); // → "Thursday, December 20, 2012, GMT"
Wenn viele Daten formatiert werden sollen, ist es besser ein {{jsxref("DateTimeFormat", "Intl.DateTimeFormat")}} Objekt zu erstellen und die Funktion {{jsxref("DateTimeFormat.prototype.format", "format")}} zu benutzen.
Spezifikation | Status | Kommentar |
---|---|---|
{{SpecName('ES3')}} | {{Spec2('ES3')}} | Initiale Definition. Implementiert in JavaScript 1.0. |
{{SpecName('ES5.1', 'sec-15.9.5.6', 'Date.prototype.toLocaleDateString')}} | {{Spec2('ES5.1')}} | |
{{SpecName('ES6', '#sec-date.prototype.tolocaledatestring', 'Date.prototype.toLocaleDateString')}} | {{Spec2('ES6')}} | |
{{SpecName('ESDraft', '#sec-date.prototype.tolocaledatestring', 'Date.prototype.toLocaleDateString')}} | {{Spec2('ESDraft')}} | |
{{SpecName('ES Int 1.0', '#sec-13.3.2', 'Date.prototype.toLocaleDateString')}} | {{Spec2('ES Int 1.0')}} | Definition der locales und options Argumente. |
{{SpecName('ES Int 2.0', '#sec-13.3.2', 'Date.prototype.toLocaleDateString')}} | {{Spec2('ES Int 2.0')}} | |
{{SpecName('ES Int Draft', '#sec-Date.prototype.toLocaleDateString', 'Date.prototype.toLocaleDateString')}} | {{Spec2('ES Int Draft')}} |
{{Compat("javascript.builtins.Date.toLocaleDateString")}}