如果创建赋值一个不会影响原对象的新对象呢?
vue2 vue3 ts等项目,创建一个新的对象,用原来的对象赋值的时候,let newObg = oldObg,赋值之后,如果修改newObg,原来的oldObg也会跟着修改,这时候会严重影响业务逻辑。
可以使用下面的方式创建一个对象,就不会影响原来的对象了。
【方法一】 使用Object.assign()方法进行浅拷贝
const originalObject = { key: 'value' };
const newObject = Object.assign({}, originalObject); // 创建新的对象
newObject.key = 'new value'; // 修改新对象不会影响原始对象
【方法二】 使用扩展运算符(…)进行浅拷贝
const originalObject = { key: 'value' };
const newObject = { ...originalObject }; // 创建新的对象
newObject.key = 'new value'; // 修改新对象不会影响原始对象