对象拷贝


赋值运算符不会创建一个对象的副本,它只分配一个引用

浅层拷贝

let objCopy = Object.assign({}, obj);

这就是 Object.assign() 的陷阱。Object.assign 只是浅拷贝。 newObj.bobj.b 都引用同一个对象,没有单独拷贝,而是复制了对该对象的引用。任何对对象属性的更改都适用于使用该对象的所有引用。我们如何解决这个问题?

深层拷贝

let newObj = JSON.parse(JSON.stringify(obj));
不幸的是,此方法不能用于复制用户定义的对象方法


文章作者: 小游
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 小游 !
  目录