概念
浅拷贝只复制指向某个对象的指针,而不复制对象本身,新旧对象还是共享同一块内存。但深拷贝会另外创造一个一模一样的对象,新对象跟原对象不共享内存,修改新对象不会改到原对象。
浅拷贝的实现方式
简单地复制语句
Object.assign()
深拷贝的实现方式
手动复制
对象只有一层的话可以使用上面的:
Object.assign()函数
转成 JSON 再转回来(会导致内存泄露)
递归拷贝
使用Object.create()方法
jquery使用
$.extend
lodash使用
_.cloneDeep