1. 程式人生 > >對數組進行整體性操作

對數組進行整體性操作

TP line 每一個 div 復制 AR ++ arr ext

當把一個數組賦給另一個數組時,只是為另一個數組增加了一個新的引用。當通過原引用修改數組的值時,另外一個引用也會感知到這個變化。
即新數組仍舊指向原來的數組。

for( var i=0;i<100;i++ ){
    num[i]= i+1;
}
var samenums =nums;
nums[0]=400;
console.log(samenums[0]); // 400

  

  

一個更好的方案是采用深復制,將原數組的每一個元素都復制到新數組中。

function copy(arr1,arr2){
    for(i=0;i<arr1.length;i++){
        arr2[i]
=arr1[i]; } } var nums =[]; for(i=0;i<100;i++ ){ nums[i]= i+1; } var samenums =[]; copy(nums,samenums); nums[0]=400; console.log(samenums[0]); // 1

參考自 https://begin5257.github.io/2016/02/13/JavaScript-Array/

  

對數組進行整體性操作