在学习作用域与作用域链的时候,看到“执行函数时会创建一个称为运行期上下文(execution context)的内部对象”,想了解下这个“运行期上下文”本质上到底是个啥?函数执行结束,“运行期上下文”就销毁了么?函数内变量在函数执行结束后的清理是否与“运行期上下文”有关?
1 回答

茅侃侃
TA贡献1842条经验 获得超21个赞
运行期上下文就是指当执行一条语句时,哪些对象(所谓的运行环境)能够被使用。比如对于一个函数内部来说,函数的参数、声明的对象、全局变量等。JS是通过作用域链来实现的,所以内层的函数能够访问外层函数的变量,一直到全局变量。函数结束时,运行期上下文我认为就销毁了,除了那些在函数执行结束后仍被引用的对象。内部变量清理,是因为有垃圾回收机制。
推荐阅读《Webkit技术内幕》
添加回答
举报
0/150
提交
取消