對數組進行整體性操作
阿新 • • 發佈:2018-06-11
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/
對數組進行整體性操作