當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


JavaScript Array concat()用法及代碼示例


在本教程中,我們將借助示例了解 JavaScript Array concat() 方法。

concat() 方法通過合並兩個或多個值/數組來返回一個新數組。

示例

let primeNumbers = [2, 3, 5, 7]
let evenNumbers = [2, 4, 6, 8]

// join two arrays 
let joinedArrays = primeNumbers.concat(evenNumbers);
console.log(joinedArrays);

/* Output:
[
  2, 3, 5, 7,
  2, 4, 6, 8 
]
*/

concat() 語法

用法:

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

這裏,arr 是一個數組。

參數:

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 concat()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。