我們知道concat方法可以組合兩個或多個數組以建立新數組,實際上concat方法也可以用來複製數組,本篇文章我們就來介紹關於如何使用JavaScript中的concat方法複製數組中concat方法複製數組的用法。
我們在需要進行陣列複製的時候可能會想到以下的方法
程式碼
var arr1 = [1,2,3,4,5]; var arr2 = []; arr2 = arr1; console.log(arr1); console.log(arr2);
執行結果如下:
[1, 2, 3, 4, 5] [1, 2, 3, 4, 5]
在這個例子中,將陣列arr1賦值給了另一個陣列arr2。
查看執行結果,似乎複製了陣列的內容並創建了相同的陣列。
但是,由於數組是「引用類型」的數據,因此它不會複製該值,而只是共享儲存該值的記憶體的位置。
因此,我們寫以下程式碼
arr2.push(6); console.log(arr1); console.log(arr2);
執行結果如下
[1, 2, 3, 4, 5, 6] [1, 2, 3, 4, 5, 6]
根據上述結果可以發現即使我們只為arr2新增值6,但陣列arr1中也會新增一個6,這就是因為兩個
陣列都只引用儲存值的位置,如果更改任一數組中的數據,兩者都會改變。
所以下面我們就來使用concat方法複製數組
我們來看具體範例
var arr1 = [1,2,3,4,5]; var arr2 = []; arr2 = arr1.concat(); arr2.push(6); console.log(arr1); console.log(arr2);
執行結果如下
[1, 2, 3, 4, 5] [1, 2, 3, 4, 5, 6]
要將另一個陣列複製到陣列arr2,只需要在複製來源arr1中執行concat()即可。
這篇文章到這裡就全部結束了,更多精彩內容大家可以追蹤php中文網相關專欄教學! ! !
以上是如何使用JavaScript中的concat方法複製數組的詳細內容。更多資訊請關注PHP中文網其他相關文章!