Baseline Widely available
Die join()
Methode von Array
Instanzen erstellt und gibt einen neuen String zurück, indem alle Elemente in diesem Array verkettet werden, getrennt durch Kommas oder einem angegebenen Trennzeichen-String. Wenn das Array nur ein Element hat, wird dieses Element ohne Verwendung des Trennzeichens zurückgegeben.
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 Parameter
separator
Optional
Ein String, der jedes Paar von benachbarten Elementen des Arrays trennt. Wenn weggelassen, werden die Array-Elemente mit einem Komma (",") getrennt.
Ein String mit allen verknüpften Array-Elementen. Wenn array.length
0
ist, wird der leere String zurückgegeben.
Die String-Konvertierungen aller Array-Elemente werden zu einem String zusammengefügt. Wenn ein Element undefined
oder null
ist, wird es in einen leeren String konvertiert, anstatt in den String "null"
oder "undefined"
.
Die join
Methode wird intern von Array.prototype.toString()
ohne Argumente aufgerufen. Ein Ãberschreiben von join
einer Array-Instanz wird das toString
Verhalten ebenfalls überschreiben.
Array.prototype.join
konvertiert rekursiv jedes Element, einschlieÃlich anderer Arrays, in Strings. Da der durch Array.prototype.toString
zurückgegebene String (was dasselbe ist wie join()
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,9
console.log(matrix.join(";")); // 1,2,3;4,5,6;7,8,9
Wenn 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;2
Wenn join()
auf sparse arrays angewendet wird, durchläuft die Methode leere Slots, als hätten sie den Wert undefined
.
Die join()
Methode ist generisch. Sie erwartet nur, dass der this
-Wert eine length
Eigenschaft und integer-schlüsselbasierte Eigenschaften besitzt.
Das folgende Beispiel erstellt ein Array a
mit drei Elementen und verbindet das 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 wie undefined
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
Die join()
Methode liest die length
Eigenschaft von this
und greift dann auf jede Eigenschaft zu, deren Schlüssel ein nicht-negativer Integer kleiner als length
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,4
console.log(Array.prototype.join.call(arrayLike, "."));
// 2.3.4
Spezifikationen Browser-Kompatibilität Siehe auch
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4