js中的深拷贝浅拷贝

时间:2022-10-05 19:52:25

浅拷贝:一个引用改变会对另外一个拷贝的引用会受影响

concat() 将数组和/或值连接成新数组 , 当数组的元素是引用的时候是浅拷贝,

slice() 返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象,当数组的元素是引用的时候是浅拷贝,

copyWithin() 复制数组的一部分到同一数组中的另一个位置,并返回它 

reverse() 方法将数组中元素的位置颠倒。返回数组的引用


深拷贝:一个引用改变不会对另外一个拷贝的引用会受影响

concat() 将数组和/或值连接成新数组 , 当数组的元素不是引用的时候是深拷贝,

slice() 返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象,当数组的元素不是引用的时候是深拷贝,

扩展运算符:  [...arr2] = arr1    arr2 === arr1 // false

filter() 返回的是一个新的数组

map() 返回一个新的数组