JS篇(018)-new 一个对象的过程中发生了什么

分手后的思念是犯贱 2023-01-03 14:03 218阅读 0赞

答案:

  1. // 1. 创建空对象;
  2. var obj = {};
  3. // 2. 设置新对象的 constructor 属性为构造函数的名称,设置新对象的__proto__属性指向构造函数的 prototype 对象;
  4. obj.__proto__ = ClassA.prototype;
  5. // 3. 使用新对象调用函数,函数中的 this 被指向新实例对象:
  6. ClassA.call(obj); //{}.构造函数();
  7. // 4. 如果无返回值或者返回一个非对象值,则将新对象返回;如果返回值是一个新对象的话那么直接直接返回该对象。

[参与互动](https://github.com/yisainan/web-interview/issues/187)

发表评论

表情:
评论列表 (有 0 条评论,218人围观)

还没有评论,来说两句吧...

相关阅读