04,extends

2020-06-09  本文已影响0人  r8HZGEmq

proto/constructor/prototype 。对象--proto(属性)--prototype组成原型链。obj.proto得到一个原型对象
原型的 constructor 属性指向构造函数,构造函数又通过 prototype 属性指回原型

class Person {}  Person instanceof Function // true 本质上还是函数 
Parent.prototype.getValue = function() {..}
class Child extends Parent { 
  constructor(value) { 
    super(value) 
    this.val = value} 
  }
let child = new Child(1) child.getValue() // 1 child instanceof Parent // true


方法二,通过原型的方式继承
function Parent(value) {
  this.val = value
}
Parent.prototype.getValue = function() {
  console.log(this.val)
}
function Child(value) {
  Parent.call(this, value)
}
Child.prototype = new Parent()

const child = new Child(1)

child.getValue() // 1
child instanceof Parent // true



上一篇下一篇

猜你喜欢

热点阅读