老师您好

来源:5-9 【TS继承准备】寄生组合继承实现方式【最佳继承模式】-1

燎丶Trance

2021-11-14

我是学Java的但是来看JS的原型继承也很理解,笑哭,估计自己学得很垃圾。
有个地方没明白:
图片描述

  1. 难道改变子类原型对象就会改变__proto__的上一级原型空间指向吗?
  2. 照道理如果对象空间中找不到会去原型中找在找不到就到上一级原型空间中,(也就是按我理解__proto__指向的是上一级原型空间),但是我Animal中的属性是对象属性啊,不是在原型中的属性啊,为什么也找到了,
写回答

1回答

keviny79

2021-11-14

1. "对象空间中找不到会去原型中找在找不到就到上一级原型空间中"这句话没错,

Dog.prototype=new Animal("金毛“,1);  这句话已经 让 狗狗对象的原型对象空间指向了 new Animal("金毛 ), name属性也在狗狗对象的原型对象空间中

2.   dog对象查找name  ,先从dog 对象找name ,没找到,然后从 Dog.prototype 原型对象空间中找,  此时Dog.prototype 原型对象空间就是 new Animal("金毛 )对象 ,所以就找到了name


0
2
keviny79
回复
燎丶Trance
对没错!
2021-11-14
共2条回复

晋级TypeScript高手,成为抢手的前端开发人才

轻松驾驭 TypeScript 高级用法, 突破前端成长瓶颈

871 学习 · 425 问题

查看课程