Web/04-JavaScript基础/12-作用域链.md
2019-12-10 22:39:08 +08:00

1.1 KiB
Raw Blame History

一些概念

作用域和作用域链

作用域

每个 JS 函数都是一个对象,对象中有些属性我们可以访问,有些属性我们不可以访问。无法访问的这些属性仅供 JS 引擎存取,scope 属性就是其中之一。

scope就是我们所说的作用域,其中存储了执行期上下文的集合。

作用域链

scope中所存储的执行期上下文对象的集合,这个集合呈链式链接,我们把这种链式链接叫做作用域链。

执行期上下文

函数执行时(准确来说,是在函数发生预编译的前一刻),会创建一个执行期上下文的内部对象。一个执行期上下文定义了一个函数执行时的环境。

每调用一次函数,就会创建一个新的上下文对象,他们之间是相互独立且独一无二的。当函数执行完毕,它所产生的执行期上下文会被销毁。

最后一段

备注:本文的内容还有待完善。

参考链接