| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString | [Back] [Original] |
Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Gerten und in vielen Browserversionen. Sie ist seit Juli 2015 browserbergreifend verfgbar.
Die toLocaleString() Methode von Date Instanzen gibt eine sprachsensitiv formatierte Darstellung dieses Datums in der lokalen Zeitzone als Zeichenkette zurck. In Implementierungen, die die Intl.DateTimeFormat API untersttzen, delegiert diese Methode an Intl.DateTimeFormat.
Jedes Mal, wenn toLocaleString aufgerufen wird, muss eine Suche in einer groen Datenbank mit Lokalisierungszeichenfolgen durchgefhrt werden, was potenziell ineffizient ist. Wenn die Methode oft mit denselben Argumenten aufgerufen wird, ist es besser, ein Intl.DateTimeFormat Objekt zu erstellen und dessen format() Methode zu verwenden, weil ein DateTimeFormat Objekt die bergebenen Argumente speichert und mglicherweise beschliet, einen Teil der Datenbank im Cache zu speichern, sodass zuknftige format Aufrufe innerhalb eines eingeschrnkteren Kontexts nach Lokalisierungszeichenfolgen suchen knnen.
const event = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));
// British English uses day-month-year order and 24-hour time without AM/PM
console.log(event.toLocaleString("en-GB", { timeZone: "UTC" }));
// Expected output: "20/12/2012, 03:00:00"
// Korean uses year-month-day order and 12-hour time with AM/PM
console.log(event.toLocaleString("ko-KR", { timeZone: "UTC" }));
// Expected output: "2012. 12. 20. 3:00:00"
toLocaleString()
toLocaleString(locales)
toLocaleString(locales, options)
Die locales und options Parameter passen das Verhalten der Funktion an und lassen Anwendungen die Sprache spezifizieren, deren Formatierungskonventionen verwendet werden sollen.
In Implementierungen, die die Intl.DateTimeFormat API untersttzen, entsprechen diese Parameter genau den Parametern des Intl.DateTimeFormat() Konstruktors. Implementierungen ohne Intl.DateTimeFormat Untersttzung werden gebeten, beide Parameter zu ignorieren, wodurch die verwendete Sprache und die Form der zurckgegebenen Zeichenkette vollstndig implementierungsabhngig sind.
locales OptionalEin Zeichenfolgen mit einem BCP 47-Sprach-Tag oder ein Array solcher Zeichenfolgen. Entspricht dem locales Parameter des Intl.DateTimeFormat() Konstruktors.
In Implementierungen ohne Intl.DateTimeFormat Untersttzung wird dieser Parameter ignoriert und in der Regel die Locale des Hosts verwendet.
options OptionalEin Objekt, das das Ausgabeformat anpasst. Entspricht dem options Parameter des Intl.DateTimeFormat() Konstruktors. Wenn weekday, year, month, day, dayPeriod, hour, minute, second und fractionalSecondDigits alle undefiniert sind, werden year, month, day, hour, minute, second auf "numeric" gesetzt.
In Implementierungen ohne Intl.DateTimeFormat Untersttzung wird dieser Parameter ignoriert.
Siehe den Intl.DateTimeFormat() Konstruktor fr Details zu diesen Parametern und deren Verwendung.
Eine Zeichenkette, die das gegebene Datum gem den sprachspezifischen Konventionen darstellt.
In Implementierungen mit Intl.DateTimeFormat entspricht dies new Intl.DateTimeFormat(locales, options).format(date).
Hinweis:
Meistens ist die von toLocaleString() zurckgegebene Formatierung konsistent. Allerdings kann die Ausgabe zwischen Implementierungen variieren, selbst innerhalb derselben Locale Variationen in der Ausgabe sind beabsichtigt und durch die Spezifikation erlaubt. Sie entspricht mglicherweise auch nicht den Erwartungen. Beispielsweise kann die Zeichenkette nicht brechende Leerzeichen verwenden oder von bidirektionalen Steuerzeichen umgeben sein. Sie sollten die Ergebnisse von toLocaleString() nicht mit fest codierten Konstanten vergleichen.
Die einfache Nutzung dieser Methode ohne Angabe von locale oder options hngt von der Implementierung ab und gibt eine Zeichenkette zurck, die basierend auf der Standard-Locale und Zeitzone sowie mit Standardoptionen formatiert ist.
const date = new Date(Date.UTC(2012, 11, 12, 3, 0, 0));
console.log(date.toLocaleString());
// "12/11/2012, 7:00:00 PM" if run in en-US locale with time zone America/Los_Angeles
Die locales und options Parameter sind mglicherweise nicht in allen Implementierungen untersttzt, da die Untersttzung fr die Internationalisierungs-API optional ist und einige Systeme mglicherweise nicht ber die erforderlichen Daten verfgen. Fr Implementierungen ohne Internationalisierungsuntersttzung verwendet toLocaleString() immer die Locale des Systems, was mglicherweise nicht dem gewnschten entspricht. Da jede Implementierung, die die locales und options Parameter untersttzt, die Intl API untersttzen muss, knnen Sie deren Existenz auf Untersttzung berprfen:
function toLocaleStringSupportsLocales() {
return (
typeof Intl === "object" &&
!!Intl &&
typeof Intl.DateTimeFormat === "function"
);
}
Dieses Beispiel zeigt einige der Variationen bei lokalisierten Datums- und Zeitformaten. Um das Format der Sprache zu erhalten, die in der Benutzeroberflche Ihrer Anwendung verwendet wird, stellen Sie sicher, dass Sie diese Sprache (und mglicherweise einige Fallback-Sprachen) mit dem locales Argument angeben:
const date = new Date(Date.UTC(2012, 1, 2, 3, 0, 0));
// Formats below assume the local time zone of the locale;
// America/Los_Angeles for the US
// US English uses month-day-year order and 12-hour time with AM/PM
console.log(date.toLocaleString("en-US"));
// "2/1/2012, 7:00:00 PM" (UTC-8 is the previous day)
// British English uses day-month-year order and 24-hour time without AM/PM
console.log(date.toLocaleString("en-GB"));
// "02/02/2012, 03:00:00" (UTC+0 or UTC+1 depending on time of the year)
// Korean uses year-month-day order and 12-hour time with AM/PM
console.log(date.toLocaleString("ko-KR"));
// "2012. 2. 2. 12:00:00"
// Arabic in most Arabic-speaking countries uses Eastern Arabic numerals
console.log(date.toLocaleString("ar-EG"));
// "// :: "
// For Japanese, applications may want to use the Japanese calendar,
// where 2012 was the year 24 of the Heisei era
console.log(date.toLocaleString("ja-JP-u-ca-japanese"));
// "H24/2/2 12:00:00"
// When requesting a language that may not be supported, such as
// Balinese, include a fallback language (in this case, Indonesian)
console.log(date.toLocaleString(["ban", "id"]));
// "2/2/2012 11.00.00"
Die von toLocaleString() bereitgestellten Ergebnisse knnen mit dem options Parameter angepasst werden:
const date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));
// Request a weekday along with a long date
const options = {
weekday: "long",
year: "numeric",
month: "long",
day: "numeric",
};
console.log(date.toLocaleString("de-DE", options));
// Example output: "Donnerstag, 20. Dezember 2012"
// The exact date may shift depending on your local time zone.
// An application may want to use UTC and make that visible
options.timeZone = "UTC";
options.timeZoneName = "short";
console.log(date.toLocaleString("en-US", options));
// Example output: "Thursday, December 20, 2012 at UTC"
// Sometimes even the US needs 24-hour time
console.log(date.toLocaleString("en-US", { hour12: false }));
// Example output: "12/19/2012, 19:00:00"
// The exact date and time may shift depending on your local time zone.
| Spezifikation |
|---|
| ECMAScript 2027 LanguageSpecification # sec-date.prototype.tolocalestring |
| ECMAScript 2027 Internationalization API Specification # sup-date.prototype.tolocalestring |
Intl.DateTimeFormatDate.prototype.toLocaleDateString()Date.prototype.toLocaleTimeString()Date.prototype.toString()DategetDate()getDay()getFullYear()getHours()getMilliseconds()getMinutes()getMonth()getSeconds()getTime()getTimezoneOffset()getUTCDate()getUTCDay()getUTCFullYear()getUTCHours()getUTCMilliseconds()getUTCMinutes()getUTCMonth()getUTCSeconds()getYear()setDate()setFullYear()setHours()setMilliseconds()setMinutes()setMonth()setSeconds()setTime()setUTCDate()setUTCFullYear()setUTCHours()setUTCMilliseconds()setUTCMinutes()setUTCMonth()setUTCSeconds()setYear()toDateString()toISOString()toJSON()toLocaleDateString()toLocaleString()toLocaleTimeString()toString()toTemporalInstant()toTimeString()toUTCString()valueOf()[Symbol.toPrimitive]()Object/FunctionDer Bauplan fr ein besseres Internet.
Teile dieses Inhalts sind 19982026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfgbar unter einer Creative-Commons-Lizenz.
| Web Proxy Viewer | New URL | Original Page |