JS 引用、浅拷贝、深拷贝 区别
引用
引用即是存放在堆区的复杂数据,被另外一个变量名再引用了一次
- 在任意一个被赋值的变量名下改复杂数据的值,值都会改变
浅拷贝
- 浅拷贝一个复杂类型,会在堆区另外新建一个数据,新的变量名指向新的数据
- 堆区的数据里如果有嵌套复杂数据类型,不会新建嵌套里面的数据,只复制第一层
深拷贝
不管复制数据类型嵌套多少复杂类型,都能完全复制
- js的实现深拷贝有三种方法
-
1.利用递归函数<函数自己套自己>遍历赋值

-
2.使用别人写好的代码,例如(js的lodash库)

-
3.利用JSON字符串转换

-

浙公网安备 33010602011771号