setInterval 执行闭包 出错

新手上路,请多包涵

clipboard.png
刚入门,,各位大哥帮忙看看 ;
定时函数setInterval 执行闭包 ,
报错 "Uncaught ReferenceError: b is not defined" (1)
应该怎么理解,,

阅读 3.2k
2 个回答
setInterval("b();", 1000)

第一个参数如果传code string, 效果类似于

eval("b();")

但是这么做的话,它的context就变成global了,但是你代码中的b()的context是aaa1,所以出错了。

setInterval会改变执行环境,执行环境会变成window

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