摘要: 今天看到了第四章,变量作用域,里面提到了作用域链(scope chain)。开始没有明白是什么意思。后来联想到前文中提到的环境栈——当执行流进入一个函数时,函数的环境就会被推入一个环境栈中。而在函数执行之后,栈将其环境弹出,把控制权返回给之前的执行环境。想到这里,之前对于数据结构和作用域的理解感觉就豁然开朗了。在编译器检查作用环境时,首先会将最外层的作用环境(变量、函数)压入到作用域栈中,然后在向下编译。当遇到另一个作用域时,将其再压入作用域栈中,但是,内层的作用域可以访问外层作用域中的变量、函数,这是只需要先栈中向下查找所使用的变量是否在栈中即可判断。当该作用域结束后,将其弹出即可。rule 阅读全文
posted @ 2014-02-19 22:02 chopic 阅读(119) 评论(0) 推荐(0) 编辑