Implemented using extended operator array, deep copy of the object

1. Array deep copy

    var array = [{name: 'jack'}, 2, 3]  
    var newArr = array
    var copyArr = [...array] 
    array.push({
      age: 18
    })
    console.log(array, 'array') //changed
    console.log(newArr, 'newArr') // changed
    console.log(copyArr, 'copyArr') // keep origin array

2. Object deep copy

      var obj = {
      name: 'gaby'
    }
    var newObj = obj
    var copyObj = {...obj}
    obj.gender = 'female'
    console.log(obj, 'obj') //changed 
    console.log(newObj, 'newObj') // changed
    console.log(copyObj, 'copyObj')  //keep origin obj

Guess you like

Origin www.cnblogs.com/antyhouse/p/11134034.html