思考Object.assign的原因

今天,因为朋友问了我深拷贝浅拷贝的问题。他先是问我什么是深拷贝,什么是浅拷贝。我就回答,浅拷贝就是给指针地址,深拷贝就是给值。
然后他就说,他也是这么理解的,但是为什么在Object.assign中,不是这样的啊。
然后他就给我看了这个方法的效果。如下图所示:
对于Object.assign的一些个人理解,如若有错,请帮忙指正。
然后问我,这个不是浅拷贝吗?那么它不是应该和直接赋值的效果一样吗?就如下面图片展示的那样。
对于Object.assign的一些个人理解,如若有错,请帮忙指正。
因为本人刚接触前端时间尚短,没有接触太多项目,还在公司实习中。因此对于这个ES6的对象新方法,并不是很熟悉,但是我知道有这个东西。
所以我去百度了,但是,不管是百度中,还是阮一峰大佬的《ES6标准入门》中,都写了这个方法是浅拷贝。
但是,我在看阮一峰大佬的《ES6标准入门》的时候看到了下面这句话。
对于Object.assign的一些个人理解,如若有错,请帮忙指正。
哦,特地提到拷贝对象的时候,是引用。那么意思是,在非对象的第一层数据中,就像是深拷贝一样的处理咯。
结合上面朋友的结果。我试着用我自己对这个现象理解的,进行了另外一种操作。
如下图所示:
对于Object.assign的一些个人理解,如若有错,请帮忙指正。
然后得到的结果为:
对于Object.assign的一些个人理解,如若有错,请帮忙指正。
到这里,我懂了。

相关文章:

  • 2021-06-14
  • 2022-12-23
  • 2021-08-27
  • 2021-05-01
  • 2021-07-25
  • 2021-07-05
  • 2022-02-17
  • 2021-06-06
猜你喜欢
  • 2021-11-07
  • 2022-12-23
  • 2022-12-23
  • 2021-09-01
  • 2022-12-23
  • 2022-02-18
  • 2022-02-27
相关资源
相似解决方案