JS中的深浅拷贝

浅拷贝:拷贝的是对象的指针,不拷贝对象的内容,新旧对象共享一块地址

  • object.assign():把任意多个对象拷贝给目标对象,拷贝的是对象属性的引用,而不是对象本身

  • 简单的=复制语句

  • $.merge():接受连个数组或类数组对象,它会将第二个数组浅拷贝到第一个数组上,并返回第一个数组

深拷贝:完全复制,又不会修改原对象,只拷贝对象本身,不拷贝对象指针

  • Object.create:经典继承

  • $.extend(true, ..)

  • lodash里提供的_.cloneDeep

  • 原型继承

  • JSON.parse(JSON.stringify(x)) — 深拷贝x

猜你喜欢

转载自blog.csdn.net/weixin_42604536/article/details/85556215