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 Instanzen des Intl.DateTimeFormat
formatiert ein Datum gemäß den Lokaleinstellungen und Formatierungsoptionen dieses Intl.DateTimeFormat
-Objekts.
Probieren Sie es aus
const options1 = {
weekday: "long",
year: "numeric",
month: "long",
day: "numeric",
};
const date1 = new Date(2012, 5);
const dateTimeFormat1 = new Intl.DateTimeFormat("sr-RS", options1);
console.log(dateTimeFormat1.format(date1));
// Expected output: "петак, 1. јун 2012."
const dateTimeFormat2 = new Intl.DateTimeFormat("en-GB", options1);
console.log(dateTimeFormat2.format(date1));
// Expected output: "Friday, 1 June 2012"
const dateTimeFormat3 = new Intl.DateTimeFormat("en-US", options1);
console.log(dateTimeFormat3.format(date1));
// Expected output: "Friday, June 1, 2012"
Syntax
format(date)
Parameter
date
-
Das zu formatierende Datum. Kann ein
Date
- oderTemporal.PlainDateTime
-Objekt sein. Zusätzlich kann es einTemporal.PlainTime
,Temporal.PlainDate
,Temporal.PlainYearMonth
oderTemporal.PlainMonthDay
-Objekt sein, wenn dasDateTimeFormat
-Objekt so konfiguriert wurde, dass es mindestens ein relevantes Datumelement druckt.Hinweis: Ein
Temporal.ZonedDateTime
-Objekt führt immer zu einemTypeError
; verwenden Sie stattdessenTemporal.ZonedDateTime.prototype.toLocaleString()
oder konvertieren Sie es in einTemporal.PlainDateTime
-Objekt.Das Weglassen führt zur Formatierung des aktuellen Datums (wie durch
Date.now()
zurückgegeben), was leicht verwirrend sein kann, daher ist es ratsam, immer explizit ein Datum zu übergeben.
Rückgabewert
Ein String, der das angegebene date
gemäß den Lokaleinstellungen und Formatierungsoptionen dieses Intl.DateTimeFormat
-Objekts formatiert darstellt.
Hinweis:
Meistens ist das durch format()
zurückgegebene Format konsistent. Jedoch kann die Ausgabe zwischen Implementierungen, selbst innerhalb derselben Lokalisierung, variieren – Abweichungen der Ausgabe sind beabsichtigt und durch die Spezifikation erlaubt. Es kann auch nicht Ihren Erwartungen entsprechen. Beispielsweise kann der String geschützte Leerzeichen verwenden oder von bidirektionalen Steuerzeichen umgeben sein. Sie sollten die Ergebnisse von format()
nicht mit fest kodierten Konstanten vergleichen.
Beispiele
Verwendung von format
Verwenden Sie die format
-Getter-Funktion für die Formatierung eines einzelnen Datums, 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 den Intl.DateTimeFormat
, aus dem sie erhalten wurde, gebunden ist, 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® 2026 Internationalization API Specification # sec-intl.datetimeformat.prototype.format |