跳到主要内容

浅拷贝

2024年04月09日
柏拉文
越努力,越幸运

浅拷贝


浅拷贝 创建一个新对象,这个对象有着原始对象属性值的一份精确拷贝。如果属性是基本类型,拷贝的就是基本类型的值,如果属性是引用类型,拷贝的就是内存地址 ,所以如果其中一个对象改变了这个地址,就会影响到另一个对象。

方案一、扩展运算符

const obj = {
type:'对象一',
data:['对象一'],
}

const objCopy = {...obj};
objCopy.type = '对象二';
console.log(objCopy.type); // 对象二
objCopy.data.push('对象二');
console.log(objCopy.data); // ['对象一', '对象二']
console.log(obj.data); // ['对象一', '对象二']