js对象拷贝

1、万能的for循环实现对象的拷贝

    var obj = {
      name: 'FungLeo',
      sex: 'man',
      old: '18'
    }
    var obj2 = copyObj(obj)

    function copyObj(obj) {
      let res = {}
      for (var key in obj) {
        res[key] = obj[key]
      }
      return res
    }

2、转换成json再转换成对象实现对象的深拷贝

    var obj = {
      name: 'FungLeo',
      sex: 'man',
      old: '18'
    }
    var obj2 = JSON.parse(JSON.stringify(obj))

3、扩展运算符实现对象的深拷贝

    var obj = {
      name: 'FungLeo',
      sex: 'man',
      old: '18'
    }
    var { ...obj2
    } = obj
    obj.old = '22'
    console.log(obj)
    console.log(obj2)

猜你喜欢

转载自blog.csdn.net/lbpro0412/article/details/81258995