原型与原型链

  1. 只要创建一个函数,就会按照特定规则为这个构造函数创建一个 prototype 属性(指向原型对象
  2. 每个原型对象都会自动获得一个名为 constructor 的属性,指向回构造函数
  3. 每次调用构造函数创建一个新实例,这个实例的内部 [[Prototype]] 指针就会被赋值为构造函数的原型对象。在浏览器中,会暴露 __proto__ 属性。
  1. function Person() {}
  2. Person.prototype.age = 18
  3. const lilei = new Person();
  4. lilei.age === 18
  5. lilei.__proto__ === Person.prototype
  6. Person === Person.prototype.constructor