JS中关于作用域

ECMA262中:
任何执行上下文时刻的作用域, 都是由作用域链来实现.
在一个函数被定义的时候, 会将它定义时刻的scope chain链接到这个函数对象的[[scope]]属性.
在一个函数对象被调用的时候,会创建一个活动对象(也就是一个对象), 然后对于每一个函数的形参,都命名为该活动对象的命名属性, 然后将这个活动对象做为此时的作用域链(scope chain)最前端, 并将这个函数对象的[[scope]]加入到scope chain中.

在这段话里面 关于函数对象的[[scope]]属性 的详细解释在哪里可以找到


繁星淼淼
浏览 522回答 1
1回答

拉莫斯之舞

可以看《Javascript 高级程序设计》第四章第4.2节关于作用域和执行环境的概念。如果想更加细致的了解(到词法作用域和编译原理这部分)可以看《你不知道的javascript(上卷)》第一部分作用域和闭包。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript