class?Parent{
????constructor(name,age){
????????this.name=name;
????????this.age=age
????}
????eat(){
????????console.log(`name:??${this.name}??age:???${this.age}`);
????}
}
class?Son?extends?Parent{
????constructor(name,age){
????????super(name,age);
????????this.age=age;
????}
????sayhi(){
????????console.log(`兒子?sayhi?${this.name}??${this.age}`)
????}
}
const?madongmei?=new?Son('馬冬梅',50)
madongmei.__proto__===Son.prototype? //全等 引用地址也相同
madongmei.prototype .__proto__===Parent.prototype? //全等 引用地址也相同
madongmei.sayhi()? ?//?兒子 sayhi 馬冬梅 50
madongmei.__proto__.sayhi() //?兒子 sayhi undefined undefined? (此時的this指向出現(xiàn)了問題隘擎,因此是undefined)
madongmei.__proto__.sayhi.call(madongmei)? //?兒子 sayhi 馬冬梅 50 (正確)
madongmei.hasOwnProperty('name')? //true
madongmei.hasOwnProperty(''eat')? //false