Array.prototype.toLocaleString()
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 toLocaleString()
Methode von Array
Instanzen gibt eine Zeichenkette zurück, die die Elemente des Arrays darstellt. Die Elemente werden in Zeichenketten konvertiert, indem ihre toLocaleString
-Methoden verwendet werden, und diese Zeichenketten werden durch eine lokal-spezifische Zeichenkette (wie ein Komma ",") getrennt.
Probieren Sie es aus
const array1 = [1, "a", new Date("21 Dec 1997 14:12:00 UTC")];
const localeString = array1.toLocaleString("en", { timeZone: "UTC" });
console.log(localeString);
// Expected output: "1,a,12/21/1997, 2:12:00 PM",
// This assumes "en" locale and UTC timezone - your results may vary
Syntax
toLocaleString()
toLocaleString(locales)
toLocaleString(locales, options)
Parameter
locales
Optional-
Ein String mit einem BCP 47 Sprach-Tag oder ein Array solcher Strings. Für die allgemeine Form und Interpretation des
locales
-Arguments siehe die Parameterbeschreibung auf derIntl
Hauptseite. options
Optional-
Ein Objekt mit Konfigurationseigenschaften. Was Sie hier übergeben können, hängt davon ab, welche Elemente konvertiert werden. Zum Beispiel für Zahlen siehe
Number.prototype.toLocaleString()
.
Rückgabewert
Eine Zeichenkette, die die Elemente des Arrays darstellt.
Beschreibung
Die Array.prototype.toLocaleString
-Methode durchsucht ihren Inhalt, ruft die toLocaleString
-Methode jedes Elements mit den bereitgestellten locales
- und options
-Parametern auf und verbindet sie mit einem implementierungsdefinierten Trennzeichen (wie ein Komma ","). Beachten Sie, dass die Methode selbst die beiden Parameter nicht verwendet – sie übergibt sie nur an die toLocaleString()
jedes Elements. Die Wahl der Trennzeichenkette hängt von der aktuellen Lokale des Hosts und nicht von dem locales
-Parameter ab.
Wenn ein Element undefined
oder null
ist, wird es in eine leere Zeichenkette umgewandelt anstatt in die Zeichenkette "null"
oder "undefined"
.
Wenn sie auf dünn besetzten Arrays verwendet wird, iteriert die toLocaleString()
-Methode über leere Stellen, als hätten sie den Wert undefined
.
Die toLocaleString()
-Methode ist generisch. Sie erwartet lediglich, dass der this
-Wert eine length
-Eigenschaft und ganzzahlige Schlüsseleigenschaften hat.
Beispiele
Verwenden von locales und options
Die Elemente des Arrays werden mithilfe ihrer toLocaleString
-Methoden in Zeichenketten umgewandelt. Zum Beispiel ruft dieses Snippet implizit die Number.prototype.toLocaleString()
-Methode auf, um die Währung für die Zeichenketten und Zahlen im prices
-Array anzuzeigen:
const prices = ["¥7", 500, 8123, 12];
prices.toLocaleString("ja-JP", { style: "currency", currency: "JPY" });
// "¥7,¥500,¥8,123,¥12"
Verwenden von toLocaleString() auf dünn besetzten Arrays
toLocaleString()
behandelt leere Stellen genauso wie undefined
und erzeugt ein zusätzliches Trennzeichen:
console.log([1, , 3].toLocaleString()); // '1,,3'
Aufrufen von toLocaleString() auf Nicht-Array-Objekten
Die toLocaleString()
-Methode liest die length
-Eigenschaft von this
und greift dann auf jede Eigenschaft zu, deren Schlüssel eine nichtnegative Ganzzahl kleiner als length
ist.
const arrayLike = {
length: 3,
0: 1,
1: 2,
2: 3,
3: 4, // ignored by toLocaleString() since length is 3
};
console.log(Array.prototype.toLocaleString.call(arrayLike));
// 1,2,3
Spezifikationen
Specification |
---|
ECMAScript® 2025 Language Specification # sec-array.prototype.tolocalestring |
ECMAScript® 2025 Internationalization API Specification # sup-array.prototype.tolocalestring |