函数作用域
来源:互联网 发布:网络交易管理办法2017 编辑:程序博客网 时间:2024/05/16 16:09
函数创建阶段
就是创建了一个函数对象,这个对象是Function的实例。创建完成之后,内部属性[[Scope]]
被初始化,上面富含了该函数作用域链的信息。在此阶段这个属性的初始位置被指代为全局对象。
函数执行阶段
该阶段,先创建执行上下文(对象)。进行初始化操作,按照函数定义中的标记符出现的位置创建活动对象,对于函数中未出现的对象,尝试从当前对象[[Scope]]上一层找,找到后复制一个引用,没有就是直接undef。这里隐含了一层意思,就是任何function实例其实创建完之后作用域顶层只有一层指向全局,不论它在任何位置
活动对象创建完毕后,推到当前function对象[[Scope]]属性的前端。函数按照执行语句的顺序开始执行。
执行完成
执行完成后,执行上下文对象销毁,活动对象也被一起销毁(从[[Scope]]对象上被拿走)等待垃圾回收。
详见《高性能JS》P18
阅读全文
0 0
- 函数定义作用域
- 函数的作用域
- JS函数作用域
- 变量、函数作用域
- 函数作用域
- 函数、作用域1
- 函数、作用域2
- 函数、作用域2
- 函数的作用域
- javascript函数作用域
- 函数变量作用域
- Python 函数作用域
- 函数、作用域、指针
- C++ 函数作用域
- 函数作用域
- javascript函数作用域
- JavaScript函数作用域
- JavaScript--函数作用域
- OpenStack公共组件oslo之十二——oslo.policy
- 使用anaconda搭建TensorFlow环境
- 静态嵌套类(Static Nested Class)和内部类(Inner Class)的不同?
- 714. Best Time to Buy and Sell Stock with Transaction Fee
- C语言指针 易错知识
- 函数作用域
- java数据类型和变量
- Intel惊现多个高危漏洞,数百万PC服务器受威胁
- 分布式Hadoop的搭建
- 1019. 数字黑洞 (20) PAT乙级真题
- BZOJ 5107 找爸爸 DP
- ros tf tool
- 抽象的(abstract)方法是否可同时是静态的(static),是否可同时是本地方法(native),是否可同时被synchronized修饰?
- Java中Synchronized的用法