遇到的问题
尝试
这里的list是数组对象,并不是单纯的数组,但是只有一层
①直接赋值→bug
在data里直接modalList=originalList结果两个一起变
原因:拷贝同一个地址指向一个数据
②Object.assign({},arr);→解決
原因:只有一层对象每次取得之后获得数据拷贝
copyArray(arr){
return arr.map((e)=>{
return Object.assign({},e);
})
}
③$.extend(true,{},obj,obj1);→没有使用
原因:拷贝后得到的是·Object集合,原有代码所有的操作都是对Arry的操作,所以改动太大放弃
深拷贝和浅拷贝
浅拷贝:拷贝的是引用的地址
(所以必须在对象是多层才能拷贝,单层拷贝的是数值,多层说明里面套着对象,所以拷贝的是地址。)
深拷贝:拷贝的是对象的数据而不是地址
参考:https://segmentfault.com/a/1190000038594213