# 对象的浅拷贝方法区别

对于对象的浅拷贝有两种方式。

  1. Object.assign

  2. 扩展运算符

# 二者的区别

  • Object.assign 方法接收第一个参数作为目标对象,后面的所有参数作为源对象。然后把所有 的源对象合并到目标对象中。它会修改一个对象。因此会触发 setter。

  • 扩展运算符,数组或对象中的每一个值都会被拷贝到一个新的对象或数组中去。 它不复制继承的属性或类的属性,但是会复制 ES6 的 symbol 属性。