JavaScript Array concat ()

Metoda JavaScript Array concat () zwraca nową tablicę poprzez scalenie co najmniej dwóch wartości / tablic.

Składnia concat()metody to:

 arr.concat(value1, value2,… , valueN)

Tutaj arrjest tablica.

concat () Parametry

concat()Metoda trwa w dowolnej liczby tablic i / lub wartości jako argumenty.

Wartość zwracana z concat ()

  • Zwraca nowo utworzoną tablicę po scaleniu wszystkich tablic / wartości przekazanych w argumencie.

concat()Metoda najpierw tworzy nową tablicę z elementów obiektu, na którym wywoływana jest metoda. Następnie sekwencyjnie dodaje argumenty lub elementy argumentów (dla tablic).

Przykład 1: użycie metody 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' )

Wynik

 („JavaScript”, „Python”, „Java”, „C”, „C ++”) („C”, „C ++”, „Lua”, „JavaScript”, „Python”, „Java”)

Przykład 2: łączenie tablic zagnieżdżonych

concat()Sposób powraca do płytkiego kopii łączonych elementów w następujący sposób:

  • Kopiuje odniesienia do obiektów do nowej tablicy. ( Na przykład : przekazanie zagnieżdżonej tablicy) Więc jeśli obiekt, do którego istnieje odwołanie, zostanie zmodyfikowany, zmiany są widoczne w zwróconej nowej tablicy.
  • Kopiuje wartość łańcuchów i liczb do nowej tablicy.
 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 ) )

Wynik

 (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))

W tym przypadku odwołanie do tablicy zagnieżdżonej jest kopiowane do tablicy połączonej. Tak więc, kiedy modyfikujemy którekolwiek z odniesień, zmiany są odzwierciedlane wszędzie.

Zalecane lektury:

  • JavaScript Array.pop ()
  • JavaScript Array.push ()

Interesujące artykuły...