_this.cancel && _this.cancel.call(_this, e);

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

4回答
好帮手慕糖 2019-07-28 19:28:03

同学你好,e是js的事件源对象,是需要在js中输出的,不能直接在html中输出哦。

祝学习愉快!

saill 2019-07-28 14:54:32

老师,我想知道它是怎么把后面的那个e传到index.html中打印出来的呢?

好帮手慕糖 2019-07-22 20:07:44

同学你好,1、_this.cancel && _this.cancel.call(_this, e);中的&&是逻辑运算符,是逻辑与的意思;

2、在&&逻辑与的判断中,如果&&前面的代码为真,直接返回,不会再向后执行,这里的返回不是return,而是判断条件不成立,程序自动返回

3、那么,_this.cancel && _this.cancel.call(_this, e);这句代码就是说_this.cancel若是存在的话为真,否则为假,使用&&逻辑与运算符,若第一个为假的话,就直接返回,若第一个为真,会接着执行第二个,就是执行 _this.cancel.call(_this, e);

4、.cancel就是用户传递的参数哦。就是如下这个,例:

http://img1.sycdn.imooc.com//climg/5d35a7040001273312890264.jpg

希望能帮助到你,祝学习愉快!

  • 这里的e是指的点击事件吧 这里传个e有什么用呢 可以直接写if(this.cancel){this.cancel()}吗
    2019-08-08 16:20:09
  • 你好,是的哦。这里是设置了这个形参,所以传递了。若是不传递的话也是可以的哦。祝学习愉快!
    2019-08-08 19:14:08
提问者 哎呦啊狗蛋 2019-07-22 16:56:17
//在用户点击取消按钮时,如果用户传入的参数中有cancel这个方法,就调用这个方法,是这样理解的吗?

const cancel = function(e) {
      _this.cancel && _this.cancel.call(_this, e); //这行的cancel是用户自己的cancel
      hideMsg();
    }
//外面函数cancel是_bind的一个方法,他俩没有关系。


问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师