浅拷贝
浅拷贝的两种情况:
- 直接拷贝(即 a=b),这种拷贝它们的引用相同,所以两个值之间会互相影响(比如修改a,b也会改变)。
- 只是简单拷贝了对象的第一层属性,基本类型值不会相互影响,但是内部的引用类型值还是会互相影响。
浅拷贝的常用方法:
let object1 = {
a: 1,
obj:{
b: 2
}
};
-
let object2 = object1;
-
let object2 = Object.assign({},object1);
-
let object2 = {...object1};
参考资料:深浅拷贝