Intl.DateTimeFormat.prototype.format()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2017.
Die format()
Methode von Intl.DateTimeFormat
Instanzen formatiert ein Datum gemäß den Locale- und Formatierungsoptionen dieses Intl.DateTimeFormat
Objekts.
Probieren Sie es aus
Syntax
format(date)
Parameter
date
-
Das zu formatierende Datum. Kann ein
Date
- oderTemporal.PlainDateTime
-Objekt sein. Zusätzlich kann es sich um einTemporal.PlainTime
,Temporal.PlainDate
,Temporal.PlainYearMonth
oderTemporal.PlainMonthDay
-Objekt handeln, wenn dasDateTimeFormat
-Objekt so konfiguriert wurde, dass es mindestens einen relevanten Teil des Datums ausgibt.Hinweis: Ein
Temporal.ZonedDateTime
-Objekt wird immer einenTypeError
auslösen; verwenden Sie stattdessenTemporal.ZonedDateTime.prototype.toLocaleString()
oder konvertieren Sie es in einTemporal.PlainDateTime
-Objekt.Wenn es weggelassen wird, wird das aktuelle Datum formatiert (wie von
Date.now()
zurückgegeben), was etwas verwirrend sein kann. Es ist daher ratsam, immer ein Datum explizit zu übergeben.
Rückgabewert
Ein String, der das gegebene date
gemäß den Locale- und Formatierungsoptionen dieses Intl.DateTimeFormat
Objekts darstellt.
Hinweis:
In der Regel ist das von format()
zurückgegebene Format konsistent. Jedoch kann die Ausgabe in unterschiedlichen Implementierungen variieren, selbst innerhalb derselben Locale — Ausgabevarianten sind von der Spezifikation erlaubt und beabsichtigt. Es kann auch nicht das sein, was Sie erwarten. Beispielsweise könnte der String geschützte Leerzeichen verwenden oder von bidirektionalen Steuerzeichen umgeben sein. Sie sollten die Ergebnisse von format()
nicht mit fest codierten Konstanten vergleichen.
Beispiele
Verwendung von format
Verwenden Sie die format
Getter-Funktion, um ein einzelnes Datum zu formatieren, hier für Serbien:
const options = {
weekday: "long",
year: "numeric",
month: "long",
day: "numeric",
};
const dateTimeFormat = new Intl.DateTimeFormat("sr-RS", options);
console.log(dateTimeFormat.format(new Date()));
// "недеља, 7. април 2013."
Verwendung von format mit map
Verwenden Sie die format
Getter-Funktion, um alle Daten in einem Array zu formatieren. Beachten Sie, dass die Funktion an die Intl.DateTimeFormat
gebunden ist, von der sie abgerufen wurde, sodass sie direkt an Array.prototype.map()
übergeben werden kann.
const a = [new Date(2012, 8), new Date(2012, 11), new Date(2012, 3)];
const options = { year: "numeric", month: "long" };
const dateTimeFormat = new Intl.DateTimeFormat("pt-BR", options);
const formatted = a.map(dateTimeFormat.format);
console.log(formatted.join("; "));
// "setembro de 2012; dezembro de 2012; abril de 2012"
Spezifikationen
Specification |
---|
ECMAScript Internationalization API Specification # sec-intl.datetimeformat.prototype.format |
Browser-Kompatibilität
BCD tables only load in the browser