【封装Ajax】这里的 let xhr; 可以放到new promise(); 函数体内吗?

【封装Ajax】这里的 let xhr; 可以放到new promise(); 函数体内吗?

问题描述:

Q1:这里的 let xhr; 可以放到new promise(); 函数体内吗?

相关截图:

https://img1.sycdn.imooc.com//climg/61ed2c5c09395d5f11040596.jpg

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

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

1回答
好帮手慕慕子 2022-01-23 18:32:43

同学你好,不可以的,因为后面需要设置p对象上的一个属性值为这个xhr对象,而let关键字声明的变量只能在当前块级作用域中访问,如果放在new Promise函数体内,在函数外无法获取到,导致无法实现效果,所以不可以放在new Promise函数体内。如下:

https://img1.sycdn.imooc.com//climg/61ed2e400978ad7206660415.jpg

祝学习愉快~

  • 提问者 easyschen #1

    这里是作用域相关知识吗?  有点忘记前面的了

    2022-01-23 18:46:59
  • 好帮手慕慕子 回复 提问者 easyschen #2

    同学你好,是的,涉及到let关键字相关的块级作用域知识了,如果忘了,可以及时回顾下前面的课程(https://class.imooc.com/lesson/1631#mid=36882  )或者自己记录的笔记,加深记忆。

    祝学习愉快~

    2022-01-24 11:31:20
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

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