--- 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 --- <div>{{JSRef}}</div> <p>Die <strong><code>toLocaleDateString()</code></strong> Methode gibt einen sprachsensitiven String mit dem Datumsteil des Zeitpunktes zurück. Die neuen Argumente <code>locales</code> und <code>options</code> können eingesetzt werden, um die Sprache (und damit die Formatierung) einzustellen oder benutzerdefinierte Formatierungen vorzunehmen. In älteren Implementierungen, die <code>locales</code> und <code>options</code> ignorieren, ist die Formatierung des String implementierungsabhängig.</p> <div>{{EmbedInteractiveExample("pages/js/date-tolocaledatestring.html")}}</div> <h2 id="Syntax">Syntax</h2> <pre class="syntaxbox"><var>dateObj</var>.toLocaleDateString([<var>locales</var> [, <var>options</var>]])</pre> <h3 id="Parameter">Parameter</h3> <p>Überprüfe das Kapitel {{anch("Browser_compatibility", "Browserkompatibilität")}}, um zu erfahren, welcher Browser die Argumente <code>locales</code> and <code>options</code> unterstützt. Zudem sollte das Beispiel {{anch("Checking_for_support_for_locales_and_options_arguments", "Unterstützung der Argumente <code>locales</code> und <code>options</code>")}} beachtet werden.</p> <div>{{page('/de/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat', 'Parameter')}}</div> <div>Der Standardwert für jede Eigenschaft einer Datums-Zeitkomponente ist {{jsxref("undefined")}}, wenn aber die Eigenschaften <code>weekday</code>, <code>year</code>, <code>month</code>, <code>day</code> {{jsxref("undefined")}} sind, sind die Eigenschaften <code>year</code>, <code>month</code>, und <code>day</code> <code>"numeric"</code>.</div> <h3 id="Rückgabewert">Rückgabewert</h3> <p>Einen String, der den Datumsteil des gegebenen {{jsxref("Date")}} Objektes mit sprachspezifischen Konventionen repräsentiert.</p> <h2 id="Beispiele">Beispiele</h2> <h3 id="Einsatz_von_toLocaleDateString()">Einsatz von <code>toLocaleDateString()</code></h3> <p>Standardeinsatz ohne Angaben zur Sprache und Formatierung. Ein formatierter String in der Standardsprache mit Standardoption wird zurückgegeben.</p> <pre class="brush: js">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 </pre> <h3 id="Unterstützung_der_Argumente_locales_und_options">Unterstützung der Argumente <code>locales</code> und <code>options</code></h3> <p>Die Argumente <code>locales</code> and <code>options</code> 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:</p> <pre class="brush: js">function toLocaleDateStringSupportsLocales() { try { new Date().toLocaleDateString('i'); } catch (e) { return e.name === 'RangeError'; } return false; } </pre> <h3 id="Einsatz_von_locales">Einsatz von <code>locales</code></h3> <p>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 <code>locales</code> gesetzt werden:</p> <pre class="brush: js">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')); // → "<span dir="rtl">٢٠/١٢/٢٠١٢</span>" // 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" </pre> <h3 id="Einsatz_von_options">Einsatz von <code>options</code></h3> <p>Das Ergebnis der <code>toLocaleDateString()</code> Methode kann benutzerdefiniert mit dem Argument <code>options</code> beeinflusst werden.</p> <pre class="brush: js">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" </pre> <h2 id="Performance">Performance</h2> <p>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.</p> <h2 id="Spezifikationen">Spezifikationen</h2> <table class="standard-table"> <tbody> <tr> <th scope="col">Spezifikation</th> <th scope="col">Status</th> <th scope="col">Kommentar</th> </tr> <tr> <td>{{SpecName('ES3')}}</td> <td>{{Spec2('ES3')}}</td> <td>Initiale Definition. Implementiert in JavaScript 1.0.</td> </tr> <tr> <td>{{SpecName('ES5.1', 'sec-15.9.5.6', 'Date.prototype.toLocaleDateString')}}</td> <td>{{Spec2('ES5.1')}}</td> <td> </td> </tr> <tr> <td>{{SpecName('ES6', '#sec-date.prototype.tolocaledatestring', 'Date.prototype.toLocaleDateString')}}</td> <td>{{Spec2('ES6')}}</td> <td> </td> </tr> <tr> <td>{{SpecName('ESDraft', '#sec-date.prototype.tolocaledatestring', 'Date.prototype.toLocaleDateString')}}</td> <td>{{Spec2('ESDraft')}}</td> <td> </td> </tr> <tr> <td>{{SpecName('ES Int 1.0', '#sec-13.3.2', 'Date.prototype.toLocaleDateString')}}</td> <td>{{Spec2('ES Int 1.0')}}</td> <td>Definition der <code>locales</code> und <code>options</code> Argumente.</td> </tr> <tr> <td>{{SpecName('ES Int 2.0', '#sec-13.3.2', 'Date.prototype.toLocaleDateString')}}</td> <td>{{Spec2('ES Int 2.0')}}</td> <td> </td> </tr> <tr> <td>{{SpecName('ES Int Draft', '#sec-Date.prototype.toLocaleDateString', 'Date.prototype.toLocaleDateString')}}</td> <td>{{Spec2('ES Int Draft')}}</td> <td> </td> </tr> </tbody> </table> <h2 id="Browserkompatibilität">Browserkompatibilität</h2> <p>{{Compat("javascript.builtins.Date.toLocaleDateString")}}</p> <h2 id="Siehe_auch">Siehe auch</h2> <ul> <li>{{jsxref("Global_Objects/DateTimeFormat", "Intl.DateTimeFormat")}}</li> <li>{{jsxref("Date.prototype.toLocaleString()")}}</li> <li>{{jsxref("Date.prototype.toLocaleTimeString()")}}</li> <li>{{jsxref("Date.prototype.toString()")}}</li> </ul>