Ajax类的实例与this.xhr的关系和区别

Ajax类的实例与this.xhr的关系和区别

请问老师这里封装的Ajax类的实例和getXHR()方法返回的this.xhr有什么区别和联系?这里为什么要加一个获取this.xhr的操作?

https://img1.sycdn.imooc.com//climg/62c553550998825604100182.jpg

正在回答

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

1回答

同学你好,解答如下:

1、通过new Ajax获取到实例上,会有xhr属性:

https://img1.sycdn.imooc.com//climg/62c5552409b7232c06700364.jpg

getXHR方法中的this.xhr就是获取实例上的xhr属性:

https://img1.sycdn.imooc.com//climg/62c55581099dc28809940346.jpg

2、xhr是XMLHttpRequest对象的实例,用来实现ajax请求。如果类Ajax外面想用该对象控制ajax请求,则可以通过getXHR方法将xhr对象暴露出去,比如:

https://img1.sycdn.imooc.com//climg/62c5574809b4fc9307920398.jpg

祝学习愉快!

  • 既然xhr已经挂载在this.xhr上了,为何外部不直接通过"实列.xhr"

    2024-03-27 20:07:52
  • 同学你好,常规理解,可以通过"实列.xhr"获取到xhr对象。但是你要注意代码的具体写法,咱们代码中,ajax方法,最终返回的就是xhr对象:

    https://img1.sycdn.imooc.com/climg/6604cad6090bf66309130279.jpg

    https://img1.sycdn.imooc.com/climg/6604cae809d8c85306600110.jpg

    https://img1.sycdn.imooc.com/climg/6604caf109b6121b04130151.jpg

    所以,直接打印ajax方法得到的变量,就能得到xhr对象:

    https://img1.sycdn.imooc.com/climg/6604cb1309f4450f08620780.jpg

    另外,同学的教学服务期到期了,如果想继续享受答疑服务,请续费购买教学服务~

    2024-03-28 09:43:37
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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