关于闭包的一个问题

Image
这里的变量 fun不是等于aaa( )了吗?
为什么调用时还要fun( ),直接fun;的话不行吗

阅读 1.8k
2 个回答

aaa()的值是

function(){alert(a++)} (变量a为函数aaa域下的a)

fun=aaa()

fun = function(){alert(a++)}   (变量a为函数aaa当前域下的a)

因为fun是个函数了,所以想执行alert(a++)那么肯定得加括号啦

因为aaa()返回的是函数
所以调用的时候还要再来个括号

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题