js中,对于动态对象通过赋值,concat,或是扩展运算符进行变量定义的,都是浅拷贝。
如果要进行深拷贝,一种方式是进行循环进行append,加入到新变量中,这种方式比较麻烦
另外一种的话,就是通过$.extend函数进行深拷贝了,方式如下:
以对一个列表进行深拷贝为例:
array_1=[1,2,3]
array_2= $.extend([],array_1)
这样之后,修改array_2就不会对array_1有影响了
js中,对于动态对象通过赋值,concat,或是扩展运算符进行变量定义的,都是浅拷贝。
如果要进行深拷贝,一种方式是进行循环进行append,加入到新变量中,这种方式比较麻烦
另外一种的话,就是通过$.extend函数进行深拷贝了,方式如下:
以对一个列表进行深拷贝为例:
array_1=[1,2,3]
array_2= $.extend([],array_1)
这样之后,修改array_2就不会对array_1有影响了