标签:拷贝 push hello 复杂 个数 console 修改 浅拷贝 而不是
举例说明:
直接将一个引用数据类型的地址,赋值给另一个变量存储的,称为浅拷贝
//浅拷贝
var arr1 = [ 1 , 2 , 3 , 4 ];
var arr2 = arr1;
arr1[0] = "hello";
console,log(arr2);//这时我们得到数据是[ "hello" , 2 , 3 ,4 ]
由于我们的变量存储的是数组的内存地址,我们将arr1赋值给arr2实际上是将数组的内存地址赋值给了arr2,就是说这两个变量所对应的数据是同一个而不是说这两个变量存储的数据是一样的,
然后我们使用变量arr1对数组进行的数据修改,最后我们输出arr2时,相应的数据也被修改了。
//深拷贝
var arr1 = [ 1 , 2 , 3 , 4 ];
var arr2 = [ ];
标签:拷贝 push hello 复杂 个数 console 修改 浅拷贝 而不是
原文地址:https://www.cnblogs.com/haoyd/p/12545299.html