关于super关键字不能获取父类实例属性的看法

来源:5-25 【TS继承源码】逐行深剖,手写TS继承JS源码-7

目訫

2022-03-17

因为super应该是父类的原型对象空间也就是Parent.prototype,但是父类的原型对象空间并没有其实例属性,所以子类不能通过super获取到,可以通过this关键字获取,但是获取到的是子类继承父类的属性,并不是定义在父类上的属性

可以这么理解吗

请老师帮忙看一下

谢谢

写回答

1回答

keviny79

2022-03-18

 super有双层含义 , 在子类中使用super调用方法时,它表示的是Parent.prototype纯定义的方法,  在子类构造函数中使用super() 这样写时,表示的是 Parent.call 函数。

this 理解对了,this表示任意一个创建的当前类的对象,每一个对象里面都有单独的内存空间,保存了父类属性的值。

1
3
目訫
非常感谢!
2022-03-18
共3条回复

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

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

871 学习 · 425 问题

查看课程