Методът concat () на JavaScript Array връща нов масив чрез обединяване на две или повече стойности / масиви.
Синтаксисът на concat()
метода е:
arr.concat(value1, value2,… , valueN)
Тук arr
е масив.
concat () Параметри
В concat()
метода се в произволен брой масиви и / или ценности като аргументи.
Върната стойност от concat ()
- Връща новосъздаден масив след обединяване на всички масиви / стойности, предадени в аргумента.
В concat()
метода първа създава нов масив с елементите на обекта, в който се нарича метод. След това последователно добавя аргументи или елементи от аргументи (за масиви).
Пример 1: Използване на метод 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' )
Изход
('JavaScript', 'Python', 'Java', 'C', 'C ++') ('C', 'C ++', 'Lua', 'JavaScript', 'Python', 'Java')
Пример 2: Обединяване на вложени масиви
В concat()
метода връща плитко копие на свръхдълги елементи по следния начин:
- Той копира препратки към обекти към новия масив. ( Например : предаване на вложен масив) Така че, ако реферираният обект е модифициран, промените са видими във върнатия нов масив.
- Той копира стойността на низовете и числата в новия масив.
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 ) )
Изход
(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))
Тук препратката към вложения масив се копира в конкатенирания масив. Така че, когато модифицираме някоя от препратките, промените се отразяват навсякъде.
Препоръчителни четива:
- JavaScript Array.pop ()
- JavaScript Array.push ()