Metoda JavaScript Array concat () returnează o nouă matrice prin combinarea a două sau mai multe valori / matrice.
Sintaxa concat()
metodei este:
arr.concat(value1, value2,… , valueN)
Iată arr
o matrice.
concat () Parametri
concat()
Metoda ia într - un număr arbitrar de matrice și / sau valori ca argumente.
Returnează valoarea de la concat ()
- Returnează o matrice nou creată după îmbinarea tuturor matricilor / valorilor transmise în argument.
concat()
Metoda creează mai întâi o nouă matrice cu elementele obiectului pe care se numește metoda. Apoi adaugă secvențial argumente sau elementele argumentelor (pentru tablouri).
Exemplul 1: Utilizarea metodei concat ()
var languages1 = ("JavaScript", "Python", "Java"); var languages2 = ("C", "C++"); // concatenating two arrays var new_arr = languages1.concat(languages2); console.log(new_arr); // ( 'JavaScript', 'Python', 'Java', 'C', 'C++' ) // concatenating a value and array var new_arr1 = languages2.concat("Lua", languages1); console.log(new_arr1); // ( 'C', 'C++', 'Lua', 'JavaScript', 'Python', 'Java' )
Ieșire
('JavaScript', 'Python', 'Java', 'C', 'C ++') ('C', 'C ++', 'Lua', 'JavaScript', 'Python', 'Java')
Exemplul 2: concatenarea matricilor imbricate
concat()
Metoda returnează copia superficială a elementelor concatenate în felul următor:
- Copiază referințele obiectelor la noua matrice. ( De exemplu : trecerea unui tablou imbricat) Deci, dacă obiectul la care se face referire este modificat, modificările sunt vizibile în matricea nouă returnată.
- Copiază valoarea șirurilor și a numerelor în noua matrice.
var randomList = (1, 2, 3); var randomNestedList = ( (4, 5), (6, 7), ); var combined = randomList.concat(randomNestedList); console.log(combined); // ( 1, 2, 3, ( 4, 5 ), ( 6, 7 ) ) // changing the value 1 to 0 randomList(0) = 0; console.log(randomList); // ( 0, 2, 3 ) // changes not reflected in concatenated array console.log(combined); // ( 1, 2, 3, ( 4, 5 ), ( 6, 7 ) ) // modifying nested list (adding 6 to first element) randomNestedList(0).push(6); console.log(randomNestedList); // ( ( 4, 5, 6 ), ( 6, 7 ) ) // changes are reflected in concatenated array // since it is a reference to the object console.log(combined); // ( 1, 2, 3, ( 4, 5, 6 ), ( 6, 7 ) )
Ieșire
(1, 2, 3, (4, 5), (6, 7)) (0, 2, 3) (1, 2, 3, (4, 5), (6, 7)) ((1, 2 , 3), (6, 7)) (1, 2, 3, (4, 5, 6), (6, 7))
Aici, referința matricei imbricate este copiată în matricea concatenată. Deci, atunci când modificăm oricare dintre referințe, schimbările se reflectă peste tot.
Lecturi recomandate:
- JavaScript Array.pop ()
- JavaScript Array.push ()