拷贝有个前提,是针对对象的操作,当想复制一个对象的时候,才存在浅拷贝深拷贝之分!
-
浅拷贝的实现方式
-
Object.assign()
可以把任意多个的源对象自身的可枚举属性拷贝给目标对象,然后返回目标对象。
-
lodash的clone方法
-
…操作符
let obj1 = { name: 'Kobe', address:{ x:100,y:100}} let obj2= { ... obj1} obj1.address.x = 200; obj1.name = 'wade' console.log('obj2',obj2) // obj2 { name: 'Kobe', address: { x: 200, y: 100 } }
-
Array.prototype.concat
let arr = [1,2,3]; let arr2 = [4,5,6];let arr3 = arr.concat(arr2)
let arr = [1, 3, { username: 'kobe' }]; let arr2 = arr.concat(); arr2[2].username = 'wade'; console.log(arr);
-
Array.prototype.slice
let arr = [1, 3,
-