继承与静态继承
来源:5-21 【TS继承源码】逐行深剖,手写TS继承JS源码-3

乔刻力
2021-10-14
如果场景既要父类方法继承又要静态方法继承的前提下 ,代码 得写成以下方式嘛?
使用setPrototypeOf继承
//作为普通继承,对ChinesePeople.prototype.__proto__属性设置为 People.prototype
Object.setPrototypeOf(ChinesePeople.prototype, People.prototype)
//获得People所有静态属性和静态方法
Object.setPrototypeOf(ChinesePeople, People)
写回答
1回答
-
keviny79
2021-10-14
正确,但要注意的是 普通继承 Object.setPrototypeOf 可以,但最好用 寄生组合式继承,就是用中间Middle 对象,因为 Object.setPrototypeOf 从本质上来说是也是__proto__来实现继承,好处就是能快速搭建父子继承,但不足是:使用__proto__来改变带来不好的问题!有哪些不好,参见问答区标题为<<关于Middle的问题>>这个同学的提问,老师给的详细解答!答案很长,老师就不重复拷贝了
00