老师关于绑定事件和send的调用

老师关于绑定事件和send的调用

http://img1.sycdn.imooc.com//climg/608375a60940273704340556.jpg

老师这里不是只得到了xhr实例吗?它没有调用init()方法

http://img1.sycdn.imooc.com//climg/60837a080902508d04200076.jpg

http://img1.sycdn.imooc.com//climg/60837996095024da00000000.jpg

http://img1.sycdn.imooc.com//climg/608379ea09d7154d02830081.jpg

就是说对与实例出来的xhr,open()方法,send()方法和绑定事件方法都没有调用,为什么请求就发送异步的数据就获得了呢?

正在回答

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

2回答

同学你好,对于你的问题解答如下:

1、老师这里想要表达的意思就是,ajax方法实例化Ajax,会自动执行Ajax类下的constructor函数中的代码

非常抱歉,给同学造成了误解,老师以后会注意的,描述更加简练一点。

2、在Ajax方法的constructor方法中调用了init方法,所以会执行init方法的,老师在上一条回答中也有介绍,如下图所示:

http://img1.sycdn.imooc.com//climg/608398bc096e88de07160638.jpg

祝学习愉快~

  • weixin_慕丝2377090 提问者 #1

    老师我明白了,就是在构造函数中定义的方法在实例化的时候会自动执行对吗?如果类中和构造方法平级的情况下定义的方法,只是定义在该实例的原型上,需要实例.方法执行对吗?

    因为在之前课程中老师没有讲到过关于在构造方法中定义方法的调用。

    2021-04-24 12:46:37
  • 同学你好,是的,理解是对的,祝学习愉快~

    2021-04-24 13:34:53
  • 慕沐0341706 回复 提问者 weixin_慕丝2377090 #3

    前面的课讲过啊<class是什么> 那节里就说了,‘实例化时执行构造方法,所以必须有构造方法,但可以不写出来’,是你忘记了吧,class类2-1那节5分22秒左右

    搜索

    复制

    2022-04-24 00:02:09
好帮手慕慕子 2021-04-24 11:01:25

同学你好,对于你的问题解答如下:

这里确实是获取到xhr实例,但是调用ajax方法的内部实例化了Ajax,在实例化时,会自动执行该类下的constructor函数中的代码,在该函数中调用了init方法,如下图所示:

http://img1.sycdn.imooc.com//climg/6083895e09972b6907520893.jpg

在init方法中,创建了XMLHttpRequest对象赋值给了this.xhr,并绑定了事件以及发送请求等操作,所以是可以的发送请求获取数据的,如下图所示:

http://img1.sycdn.imooc.com//climg/6083897d0956c34911880722.jpg

祝学习愉快~

  • 提问者 weixin_慕丝2377090 #1

    老师这句话我没有明白“调用ajax方法的内部实例化了Ajax,再实例化时,会自动执行该类下的constructor函数中的代码”

    ​ajax方法的内部实例化了Ajax class,得到的实例就是这个ajax, 再实例化时是什么意思啊?

    还有就是的确构造方法中带有了init()函数,这也只能说在实例化后这个是实例自己的方法,不是该类共享的方法。还是应该实例打点调用才会执行才对吧。所以为什么init()在没有调用的情况下怎么会自我执行呢?我回顾了之前的课程也没有讲到过啊。

    2021-04-24 11:54:25
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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