老师 想请问下函数作用域问题

老师 想请问下函数作用域问题

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

老师 因为result为fn2的函数体 如果为直接result=fn2的话会报错 是因为fn2的作用域只在fn1里面 所以调用不到吗 谢谢

正在回答

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

1回答

同学你好,函数作用域,会在函数运行的时候执行;fn1里面的代码,只有在fn1被执行的时候,才会执行;所以必须先执行fn1,fn2才会被注册上去;将 fn2 return出去,赋值给了result;祝学习愉快~


  • 慕仙0240544 提问者 #1

    老师 我这样也不行 意思是一定要从fn1里面返回出来才能用是吗 就算执行了fn1也不能直接拿fn2吗

            fn1();

            result=fn2; //fn2的函数体

            result(); //2

            numadd(); //110

            result(); //3


    2022-07-11 09:40:47
  • imooc_慕慕 回复 提问者 慕仙0240544 #2

    同学你好,同学理解的是对的,祝学习愉快~

    2022-07-11 09:56:20
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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