对象的引用和复制

66 阅读1分钟
let a = {};
let b = a; //直接复制引用
console.log(a==b); 
console.log(a===b); // 都为true

直接使用等号进行对两个对象赋值操作,为对象的引用,两个对象完全相同,即内容相同,在内存上的地址也相同。

修改一个对象的属性会影响另一个引用对象的属性值。

使用 . 或者[ ]的方式改变对象属性值,对应另一个对象的值也方式改变。

点语法修改对象属性

image.png image.png

[]修改对象属性

image.png

但是如果直接修改对象的内容,则另一个对象不会随之改变,因为直接修改对象的值,对象的引用发生改变。

image.png

image.png

image.png