存在以下两种情况:
example 1:
let obj = {a:1};
console.log(obj); //{a:2}
obj['a'] = 2;
example 2:
let num = 1;
console.log(num); //1
num = 2;
解决方案 1:
let obj = {a:1};
console.log(JSON.parse(JSON.stringify(obj))); //{a:1}
obj['a'] = 2;
总结:引用类型浅拷贝是共享一个内存地址,通过深拷贝解决。
本文通过两个示例对比了JavaScript中对象赋值时浅拷贝与深拷贝的区别,展示了当对象属性发生变化时,浅拷贝如何导致原始对象与副本对象之间的属性同步变化,并介绍了使用JSON.parse和JSON.stringify实现深拷贝的方法。
206

被折叠的 条评论
为什么被折叠?



