Array.prototype.concat()
Die Methode Array.prototype.concat()
wird verwendet, um zwei oder mehr Arrays oder Werte zu einem neuen Array zu verbinden, ohne das ursprüngliche Array zu verändern.
Die Methode erzeugt ein neues Array, indem sie das ursprüngliche Array mit einem oder mehreren Arrays oder Werten kombiniert.
Syntax
let newArray = arrayOne.concat(arrayTwo, arrayThree, ..., valueN);
arrayOne
Dies ist das Array, an das andere Arrays oder Werte angehängt werden.
arrayTwo, arrayThree, ..., valueN
Dies sind die Arrays oder Werte, die man an das ursprüngliche Array anfügen möchte..
Wichtig: Die Methode erstellt eine flache Kopie eines Arrays. Das bedeutet, dass nur die oberste Ebene der Arrays kopiert wird.
Beispiele
Einfaches Zusammenführen
let aOne = [1, 2, 3];
let aTwo = [4, 5, 6];
let aNew = aOne.concat(aTwo);
console.log(aNew);
console.log(aOne);
[ 1, 2, 3, 4, 5, 6 ]
[ 1, 2, 3 ]
Mehrere Arrays und Werte kombinieren
let aOne = [1, 2];
let aTwo = [3, 4];
let aThree = [5, 6];
let aNew = aOne.concat(aTwo, aThree, 7, 8);
console.log(aNew);
[ 1, 2, 3, 4, 5, 6, 7, 8 ]
Flache Kopie
Die flache Kopie wird bei Arrays besonders relevant, wenn man mit Objekten oder Arrays innerhalb von Arrays arbeitet. Bei Verwendung von concat()
wird bei verschachtelten Arrays oder Objekten nur die Referenz auf diese kopiert.
let aOne = [[1], [2]];
let aTwo = [[3], [4]];
let aNew = aOne.concat(aTwo);
// Change inner array
aOne[0][0] = 100;
console.log(aNew);
console.log(aOne);
[ [ 100 ], [ 2 ], [ 3 ], [ 4 ] ]
[ [ 100 ], [ 2 ] ]
Primitive Werte
Man kann nicht nur Arrays oder Objekte, sondern auch primitive Werte anfügen.
let aOne = [1, 2];
let aNew = aOne.concat(3, "Hello", true, [4, 5]);
console.log(aNew);
[ 1, 2, 3, 'Hello', true, 4, 5 ]