Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
Array.prototype.join()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Juli 2015.
Diejoin() Methode vonArray Instanzen erstellt undgibt einen neuen String zurück, indem alle Elemente in diesem Array verkettet werden,getrennt durch Kommas oder einem angegebenen Trennzeichen-String. Wenn das Arraynur ein Element hat, wird dieses Element ohne Verwendung des Trennzeichens zurückgegeben.
In diesem Artikel
Probieren Sie es aus
const elements = ["Fire", "Air", "Water"];console.log(elements.join());// Expected output: "Fire,Air,Water"console.log(elements.join(""));// Expected output: "FireAirWater"console.log(elements.join("-"));// Expected output: "Fire-Air-Water"Syntax
join()join(separator)Parameter
separatorOptionalEin String, der jedes Paar von benachbarten Elementen des Arrays trennt. Wenn weggelassen, werden die Array-Elemente mit einem Komma (",") getrennt.
Rückgabewert
Ein String mit allen verknüpften Array-Elementen. Wennarray.length0 ist, wird der leere String zurückgegeben.
Beschreibung
Die String-Konvertierungen aller Array-Elemente werden zu einem String zusammengefügt. Wenn ein Elementundefined odernull ist, wird es in einen leeren String konvertiert, anstatt in den String"null" oder"undefined".
Diejoin Methode wird intern vonArray.prototype.toString() ohne Argumente aufgerufen. Ein Überschreiben vonjoin einer Array-Instanz wird dastoString Verhalten ebenfalls überschreiben.
Array.prototype.join konvertiert rekursiv jedes Element, einschließlich anderer Arrays, in Strings. Da der durchArray.prototype.toString zurückgegebene String (was dasselbe ist wiejoin() aufzurufen) keine Trennzeichen hat, sehen geschachtelte Arrays so aus, als ob sie abgeflacht wären. Man kann nur das Trennzeichen der ersten Ebene steuern, während tiefere Ebenen immer das Standard-Komma verwenden.
const matrix = [ [1, 2, 3], [4, 5, 6], [7, 8, 9],];console.log(matrix.join()); // 1,2,3,4,5,6,7,8,9console.log(matrix.join(";")); // 1,2,3;4,5,6;7,8,9Wenn ein Array zyklisch ist (es enthält ein Element, das es selbst ist), vermeiden Browser eine unendliche Rekursion, indem sie die zyklische Referenz ignorieren.
const arr = [];arr.push(1, [3, arr, 4], 2);console.log(arr.join(";")); // 1;3,,4;2Wennjoin() aufsparse arrays angewendet wird, durchläuft die Methode leere Slots, als hätten sie den Wertundefined.
Diejoin() Methode istgenerisch. Sie erwartet nur, dass derthis-Wert einelength Eigenschaft und integer-schlüsselbasierte Eigenschaften besitzt.
Beispiele
>Ein Array auf vier verschiedene Arten verbinden
Das folgende Beispiel erstellt ein Arraya mit drei Elementen und verbindetdas Array vier Mal: mit dem Standard-Trennzeichen, dann mit einem Komma und einem Leerzeichen, dann mit einem Pluszeichen und einem leeren String.
const a = ["Wind", "Water", "Fire"];a.join(); // 'Wind,Water,Fire'a.join(", "); // 'Wind, Water, Fire'a.join(" + "); // 'Wind + Water + Fire'a.join(""); // 'WindWaterFire'Verwendung von join() auf sparse arrays
join() behandelt leere Slots genauso wieundefined und erzeugt einen zusätzlichen Trenner:
console.log([1, , 3].join()); // '1,,3'console.log([1, undefined, 3].join()); // '1,,3'Aufruf von join() bei Nicht-Array-Objekten
Diejoin() Methode liest dielength Eigenschaft vonthis und greift dann auf jede Eigenschaft zu, deren Schlüssel ein nicht-negativer Integer kleiner alslength ist.
const arrayLike = { length: 3, 0: 2, 1: 3, 2: 4, 3: 5, // ignored by join() since length is 3};console.log(Array.prototype.join.call(arrayLike));// 2,3,4console.log(Array.prototype.join.call(arrayLike, "."));// 2.3.4Spezifikationen
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-array.prototype.join> |