对象赋值
用 Object.assgin() 实现浅拷贝
代码举例:
1 | const obj1 = { |
打印结果:
1 | { |
注意,上面这行代码在实际开发中,会经常遇到,一定要掌握。它的作用是:将 obj1 的值追加到 obj2 中。如果两个对象里的属性名相同,则 obj2 中的值会被 obj1 中的值覆盖。
数组赋值
扩展运算符
1 | arr2 = arr1; |
上方代码中,其实是让 arr2 指向 arr1 的地址。也就是说,二者指向的是同一个内存地址。
如果不想让 arr1 和 arr2 指向同一个内存地址,我们可以借助扩展运算符来做:
1 | let arr2 = [...arr1]; //arr2 会开辟新的内存地址 |
参考链接: