JS的浅拷贝和深拷贝
预备知识原始值和引用值的区别原始值存储在变量访问的位置,引用值存储在堆内存中(变量访问的位置仅储存内存地址)。浅拷贝和深拷贝应用场景浅拷贝和深拷贝只有对于引用值即复杂数据类型(Object类型、Array类型、Function类型)。区别设obj是已有一个复杂数据类型对象,obj1由obj浅拷贝而来,obj2由obj深拷贝而来。如果改变obj1的内容,obj也会改变,即浅拷贝时复制的是内存地址。如果改变obj2的内容,obj不会改变,即深拷贝时会开辟一个新内存空间。
复制链接