与2-4第2题相比,这个题的考点是什么?

与2-4第2题相比,这个题的考点是什么?

疑惑点:

  1. 外部函数中访问的局部变量不是在闭包里进行缓存吗?

  2. test()() 与  fn = test() fn() 有什么区别?

正在回答

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

2回答
  1. 执行结果如下:

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

第一次使用 test()() 相当于执行 subTest函数,num 赋值 1 ,然后运行subTest 中的++num ,所以值为2.

第二次还是执行test()() ,重新 num 赋值 1 ,然后运行subTest 中的++num ,所以值也为2

2. 2-4 的第2题:

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

,然后 fn() ,  运行subText 函数。

执行如下:

func = test() , test() 执行后返回subText赋给 func , func相当于subText 函数 , 这是执行 n=10.

func() 执行,n 为11

在执行func() ,n 为12

希望解答你的疑问,祝学习愉快。



小于飞飞 2018-05-10 15:13:03

test()() 直接运行subText 函数。

fn = test()先把 test() 赋给 fn , fn相当于subText 函数 ,然后 fn() ,  运行subText 函数

希望帮你解答疑惑,祝学习愉快。

  • 提问者 西兰花伟大炮 #1
    这个还是没解决我的困惑呀,为什么答案是 2 2,不是 2 3 ?
    2018-05-11 07:50:08
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
组件化思想开发电商网页 18版
  • 参与学习           人
  • 提交作业       467    份
  • 解答问题       4826    个

本路径带你通过系统学习HTML5、JavaScript、jQuery的进阶知识,不仅如此,还会学习如何利用组件化的思想来开发网页,知识点+案例,使得所学可以更好的得到实践。

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

在线咨询

领取优惠

免费试听

领取大纲

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