首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么是Object.assign()而不是this.assign() (对于对象)?

为什么是Object.assign()而不是this.assign() (对于对象)?
EN

Stack Overflow用户
提问于 2019-04-04 20:44:47
回答 1查看 82关注 0票数 2

我正在做一个JavaScript项目,我想知道为什么对象实例不继承assign()和其他方法,而必须调用超类(superobject?) Object方法。

为什么是Object.assign()而不是this.assign() (对于对象)?

EN

回答 1

Stack Overflow用户

发布于 2019-04-04 21:05:13

因为继承在javacript中的工作方式。引用自

https://codeburst.io/javascript-for-beginners-the-new-operator-cee35beb669e

当你使用

时,会发生四件事:

  1. 它会创建一个新的空对象。
  2. 它将这个绑定到我们新创建的对象。
  3. 它向我们新创建的对象添加了一个名为“

”的属性,该属性指向构造函数的原型对象。

  1. 它将一个return this添加到函数的末尾,以便从函数返回创建的对象。

因此,超级对象方法不会复制到新对象中。它们可以通过新创建的对象的原型进行访问。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55516331

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档