为了账号安全,请及时绑定邮箱和手机立即绑定

函数执行环境

函数执行环境

胡说叔叔 2018-09-11 13:26:40
在匿名函数执行环境不是具有全局性吗?那这里调用全局的变量是不是匿名函数就不会在作用域链一级一级的找 新人不太懂 麻烦说细一点 谢谢
查看完整描述

1 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

这个叫做作用域链 scope chain

每当 JavaScript 执行一个函数时,都会创建一个作用域对象(scope object),用来保存在这个函数中创建的局部变量。它和被传入函数的变量一起被初始化。这与那些保存的所有全局变量和函数的全局对象(global object)类似,但仍有一些很重要的区别,第一,每次函数被执行的时候,就会创建一个新的,特定的作用域对象;第二,与全局对象(在浏览器里面是当做 window 对象来访问的)不同的是,你不能从 JavaScript 代码中直接访问作用域对象,也没有可以遍历当前的作用域对象里面属性的方法。

作用域对象组成了一个名为作用域链(scope chain)的链。它类似于原形(prototype)链一样,被 JavaScript 的对象系统使用。

一个闭包就是一个函数和被创建的函数中的作用域对象的组合。


查看完整回答
反对 回复 2018-10-28
  • 1 回答
  • 0 关注
  • 805 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号