針對於JavaScript的對象和數組(數組也是對象)淺拷貝只是引用,內存不變;而深拷貝就是遞歸賦值。
深拷貝是不一樣內存,相互獨立。而淺拷貝會影響數組
var arr = [1,2,3],arr2=[]; for(var i=0;i<arr.length;i<arr){ arr2[i] = arr[i] } arr.push(4); console.log(arr) // 1,2,3,4 console.log(arr2) //1,2,3 還能夠用一句簡單的代碼實現上面的深拷貝: **Array.prototype.push.apply(arr2,arr);**