JavaScript中的函数拥有自己的执行环境,每一个执行环境中都有一个与之关联的变量对象,环境中所有定义的变量和函数都保存在这个变量当中。
当代码在一个执行环境中执行时会创造一个作用域链。这个作用域链保证对执行环境有权访问的变量和对象的有序访问。作用域链的最前端始终为当前执行代码所在的环境的变量对象,作用域链的下一个变量对象来自其包含环境,以此类推,作用域链的末端始终为全局作用域的变量对象。
标识符解析是沿着作用域链一级级搜索的过程,搜索过程从最前端开始(即当前执行环境),如果没有的话则向后回溯,直至找到标识符为止。
浅谈JavaScript作用域链
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...