老师不太能理解这节中定义脚本执行函数为啥用函数

老师不太能理解这节中定义脚本执行函数为啥用函数

 getJSONP[name] =function(data){

            try{

                callback&&callback(data)

            }

            catch(e){


            }finally{


            }

        }

它这个getJSONP[name]当中不是有我们生成的值嘛,为啥这个时候要指向堆内存function当中呢?这个不太能理解还有这个data是保存上面数据的嘛,还请老师科普一下

正在回答

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

2回答

同学你好,不太清楚同学具体是在哪里打印的,具体要打印什么呢?

老师这里根据同学的描述测试了两种情况,同学可以结合下图注释和打印结果理解下

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

如果还有问题,可以将你测试打印的代码粘贴过来,便于帮助同学准确的定位与解决问题。

祝学习愉快~

好帮手慕慕子 2020-06-13 13:37:48

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

  1. getJSONP[name]是我们开始定义的值,如下图所示,getJSONP[name]与cbname是一样的。因为cbname是传递到服务器端的,服务器端接收到请求之后,会自动执行这个函数,将对应的数据作为参数传递过来, 所以需要将其定义为一个函数,通过参数获取到服务器返回的数据。


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

  2. 根据第一条的解析可知,data保存的是服务器返回的数据,传递给callback,即:调用getJSONP方法时,回调函数中的参数,如下所示:

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

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

  • 提问者 慕少3568243 #1
    老师为什么我打印getJSONP显示是undifined呢?
    2020-06-13 16:21:37
  • 提问者 慕少3568243 #2
    看到了,有写回调函数的时候删除
    2020-06-13 16:24:29
  • 提问者 慕少3568243 #3
    但是getJSONP.name的时候有值,而且这个值是getJSONP后面随机生成的值就没有了,console.log(getJSONP[name])的时候就又是undifined这句console.log放在回调函数模块前面依然是undifined
    2020-06-13 16:28:37
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
2.组件化网页开发
  • 参与学习           人
  • 提交作业       1121    份
  • 解答问题       14456    个

本阶段在运用JS实现动态网页开发的基础上,带你深入理解企业开发核心思想,完成一个企业级网页的开发,体验前端工程师的成就感。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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