js对数组、对象的深拷贝、复制

基本类型的数据是存放在栈内存中的,而引用类型的数据是存放在堆内存中的

基本类型:Number Boolean undefined String Null

引用类型:Object Function

 

js中对象Object和数组Array都是引用类型

 

当用变量声明一个引用类型时,实际上这个变量不是引用类型本身,而是一个指向这个引用类型的指针。这个指针指向堆内存中该对象的存储地址。复制给另一个对象的过程其实是把该对象的地址复制给了另一个对象变量,两个指针都指向同一个对象,因此其中一个改变,另一个也会改变,具体如下图所示

 

如需要深度克隆即:JSON.parse(JSON.stringify(data));

 

posted @ 2019-07-17 18:30  麋鹿鲁哟  阅读(1187)  评论(0编辑  收藏  举报