JavaScript中concat復(fù)制數(shù)組方法淺析
我們在需要進(jìn)行數(shù)組復(fù)制的時候可能會想到以下的方法
代碼
var arr1 = [1,2,3,4,5]; var arr2 = []; arr2 = arr1; console.log(arr1); console.log(arr2);
執(zhí)行結(jié)果如下:
[1, 2, 3, 4, 5] [1, 2, 3, 4, 5]
在這個例子中,將數(shù)組arr1賦值給了另一個數(shù)組arr2。
查看執(zhí)行結(jié)果,似乎復(fù)制了數(shù)組的內(nèi)容并創(chuàng)建了相同的數(shù)組。
但是,由于數(shù)組是“引用類型”的數(shù)據(jù),因此它不會復(fù)制該值,而只是共享存儲該值的內(nèi)存的位置。
因此,我們編寫以下代碼
arr2.push(6); console.log(arr1); console.log(arr2);
執(zhí)行結(jié)果如下
[1, 2, 3, 4, 5, 6] [1, 2, 3, 4, 5, 6]
根據(jù)以上結(jié)果可以發(fā)現(xiàn)即使我們只給arr2添加新值6,但是數(shù)組arr1中也會添加一個6,這就是因為兩個
數(shù)組都只引用存儲值的位置,如果更改任一數(shù)組中的數(shù)據(jù),兩者都會改變。
所以下面我們就來使用concat方法復(fù)制數(shù)組
我們來看具體示例
var arr1 = [1,2,3,4,5]; var arr2 = []; arr2 = arr1.concat(); arr2.push(6); console.log(arr1); console.log(arr2);
執(zhí)行結(jié)果如下
[1, 2, 3, 4, 5] [1, 2, 3, 4, 5, 6]
要將另一個數(shù)組復(fù)制到數(shù)組arr2,只需要在復(fù)制源arr1中執(zhí)行concat()即可。
- JS數(shù)組合并push與concat區(qū)別分析
- js嵌套的數(shù)組扁平化:將多維數(shù)組變成一維數(shù)組以及push()與concat()區(qū)別的講解
- JavaScript使用concat連接數(shù)組的方法
- JavaScript字符串對象的concat方法實例(用于連接兩個或多個字符串)
- JS數(shù)組方法concat()用法實例分析
- JavaScript中使用concat()方法拼接字符串的教程
- 深入理解javascript中concat方法
- javascript使用 concat 方法對數(shù)組進(jìn)行合并的方法
- Javascript連接多個數(shù)組不用concat來解決
- js采用concat和sort將N個數(shù)組拼接起來的方法
- javascript中數(shù)組的concat()方法使用介紹
- javascript concat數(shù)組累加 示例
- JS Array創(chuàng)建及concat()split()slice()的使用方法
- 淺談JavaScript的push(),pop(),concat()方法
- JavaScript模擬數(shù)組合并concat
- JS數(shù)組降維的實現(xiàn)Array.prototype.concat.apply([], arr)
- javascript數(shù)組中的concat方法和splice方法
- JavaScript的concat方法實例代碼(數(shù)組連接)
相關(guān)文章
javascript 中iframe高度自適應(yīng)(同域)實例詳解
這篇文章主要介紹了javascript 中iframe高度自適應(yīng)(同域)實現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下2017-05-05javascript學(xué)習(xí)筆記(七)利用javascript來創(chuàng)建和存儲cookie
今天把javascript如何用來創(chuàng)建及存儲cookie復(fù)習(xí)了一下,其中的一點體會拿出來和大家討論,懇請高手指點一二。2011-04-04IE關(guān)閉時判斷及AJAX注銷案例學(xué)習(xí)
當(dāng)關(guān)閉系統(tǒng)時會提示:你確定要退出系統(tǒng)嗎?退出請按'離開此頁'接下來將講解下IE關(guān)閉判斷及AJAX注銷,感興趣的你可不要錯過了哈,希望本例對你學(xué)習(xí)ajax有所幫助2013-02-02由document.body和document.documentElement想到的
不知道大家對這個標(biāo)題有沒有想法,反正此前我一直把他們混為了一談。其實不然,首先需有個“標(biāo)準(zhǔn)”的概念。2009-04-04