Questo articolo richiede una revisione stilistica. Scopri come puoi essere d’aiuto.`
Questa traduzione è incompleta. Collabora alla traduzione di questo articolo dall’originale in lingua inglese.
Il metodo concat()
ritorna un nuovo array costituito dall'array sul quale è stato invoacto (joined array) e dagli array e/o valori passati come argomenti.
Syntax
var new_array = old_array.concat(value1[, value2[, ...[, valueN]]])
Parameters
valueN
- Array e/o valori da concatenare nel nuovo array. Vedere la descrizione sotto per i dettagli.
Return value
Una nuova istanza di Array
.
Description
concat crea un nuovo array costituito dagli elementi dell'oggetto su cui è stato invocato, seguiti in ordine da ciascun argomento o dagli elementi di ciascun argomento, se quest'ultimo è esso stesso un array.
concat non altera l'array originale o gli elementi passati come parametri, ma ritorna una copia degli stessi che contiene copie degli elementi costituenti gli argomenti. Gli elementi degli array originali sono copiati in quello nuovo secondo le seguenti regole:
- i riferimenti agli oggetti (non gli oggetti stessi): i reference vengono copiati nel nuovo array. Pertanto sia gli elementi degli array originali che quelli dell'array prodotto da concat puntano agli stessi oggetti. Pertanto se uno degli oggetti cui i reference puntano viene cambiato, i cambiamenti possono essere visualizzati tramite i riferimenti contenuti nell'array originale o nella copia.
- stringhe, nueri e booleani (non oggetti
String
,Number
, eBoolean
): vengono copiati da concat per valore nel nuovo array.
Note: Concatenando i valori di diversi array o valori, si lasciano gli originali inalterati. Inoltre, qualsiasi operazione sui nuovi array (solo nel caso gli elementi non siano dei riferimenti ad oggetti) non avrà effetto alcuno sugli originali e viceversa.
Esempi
Concatenare due array
Il codice seguente concatena due array:
var alpha = ['a', 'b', 'c'], numeric = [1, 2, 3]; var alphaNumeric = alpha.concat(numeric); console.log(alphaNumeric); // Risultato: ['a', 'b', 'c', 1, 2, 3]
Concatenare tre array
Il codice seguente concatena tre array:
var num1 = [1, 2, 3], num2 = [4, 5, 6], num3 = [7, 8, 9]; var nums = num1.concat(num2, num3); console.log(nums); // Risultato: [1, 2, 3, 4, 5, 6, 7, 8, 9]
Concatenare valori ad un array
Il codice seguente concatena dei valori a quelli presenti in un array:
var alpha = ['a', 'b', 'c']; var alphaNumeric = alpha.concat(1, [2, 3]); console.log(alphaNumeric); // Risultato: ['a', 'b', 'c', 1, 2, 3]
Specifiche
Specifiche | Stato | Commento |
---|---|---|
ECMAScript 3rd Edition (ECMA-262) | Standard | Definizione iniziale, implementato in JavaScript 1.2. |
ECMAScript 5.1 (ECMA-262) The definition of 'Array.prototype.concat' in that specification. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Array.prototype.concat' in that specification. |
Standard | |
ECMAScript 2017 Draft (ECMA-262) The definition of 'Array.prototype.concat' in that specification. |
Draft |
Compatibilità con i Browser
Browser | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Supporto Base | 1.0 | 1.0 (1.7 or earlier) | 5.5 | (Yes) | (Yes) |
Browser | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Supporto Base | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
See also
push
/pop
— aggiunge/rimuove elementi dalla fine di un arrayunshift
/shift
— aggiunge/rimuove elementi dall'inizio di un arraysplice
— aggiunge/rimuove elementi da una posizione specifica dell'arrayString.prototype.concat()
Symbol.isConcatSpreadable
– control flattening.