通过new命令生成一个实例对象经历了四个步骤: 

1. 创建一个空对象, 作为将要返回的实例;

2. 将空对象的原型指向构造函数的prototype属性;

3. 将空对象赋值给构造函数的this;

4. 执行构造函数内部代码;

 

下面是这四个过程的演示: 

// 创建一个构造函数Person
function Person(name) {
    this.name = name;
}

// 1. 创建一个空对象
var lilei = {};

// 2. 将空对象的原型指向构造函数的prototype;
lilei.prototype = Person.prototype;

// 3. 将空对象赋值给构造函数的this;
function Person(name) {
    this = lilei;
    // ...
};

// 4. 执行构造函数内部代码
function Person(name) {
    this = lilei;
    this.name = name;
}

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-05-07
  • 2021-04-13
  • 2021-10-21
  • 2022-12-23
猜你喜欢
  • 2021-06-23
  • 2022-12-23
  • 2022-01-07
  • 2022-02-09
  • 2021-11-09
  • 2022-12-23
  • 2021-11-18
相关资源
相似解决方案