关于后面this的意义

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

weixin_慕仰5248519

2022-04-21

 _super.call(this, brand_, vechileNo_, days_, deposit_) || this;

我本来以为是防止父类传递的是个null,没有call方法 然后直接走后面流程,但是看代码前面是直接执行了 并不是先判断super有没有call方法
而且这样写正常流程也肯定会走不到后面的吧 前面的肯定会执行,老师可以说一下后面这个this的意义吗

写回答

2回答

keviny79

2022-04-22


//img.mukewang.com/szimg/6262526a081411b910540711.jpg

理解这个问题,需要有点架构思维才可以,详细同学可以看截图

0
0

weixin_慕仰5248519

提问者

2022-04-22

已经知道答案了

var _this =
//  Vechile.call(this,brand_, vechileNo_, days_, total_, deposit_)
_super.call(this, brand_, vechileNo_, days_, deposit_) || this;

如果父类构造函数中没有返回this, 那么就返回这里的this,  构造函数里返回this是为了可以后面链式调用方法, 不知道这样理解对不对, 但是不知道这么做的意义是什么? 在这里的上下文环境下 直接定义 var _this = this; 不行么

0
1
慕勒4812823
构造函数 会隐式返回this的 直接写 var _this = this; 不就还是子类Car么 _this本意应该是指向 父类吧 这样才能直接传父类的属性
2022-07-07
共1条回复

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

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

871 学习 · 425 问题

查看课程