JS中子类的实例属性为什么可以访问父类的实例属性?

class Person {

  constructor(name, age) {

    this.name = name

    this.age = age

  }

  

  test() { }

}


class Student extends Person {

  constructor(name, age, no) {

    super(name, age)

    this.no = no

  } 


  say() {

    console.log(`name: ${this.name}, age: ${this.age}, no: ${this.no}`)

  }

}


let student = new Student('mrcode', 21, '11403080435')


student.say()

student可以访问test方法,这点可以理解。 但是为什么通过Student中的this可以访问到父类中的name, age呢? ES6中的class只是原型链的语法糖。 原型链上的对象都是原型。 哪里来的name, age属性呢?

慕仙森
浏览 706回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript