8.1.2.5 NewGlobalEnvironment ( G, thisValue )
当使用参数 G 和 thisValue 调用抽象操作 NewGlobalEnvironment 时,将执行以下步骤:
- 使 env 变为一个新的词法环境。
- 使 objRec 变为一个新的对象 Environment Record 包含 G 作为绑定对象。
- 使 dclRec 变为 一个新的声明性环境记录,不包含绑定。
- 使 globalRec 成为一个新的全局环境记录。
- 设置 globalRec.[[ObjectRecord]] 为 objRec。
- 设置 globalRec.[[GlobalThisValue]] 为 thisValue。
- 设置 globalRec.[[DeclarativeRecord]] 为 dclRec。
- 设置 globalRec.[[VarNames]] 为新的空 List。
- 设置 env's _EnvironmentRecord 为 _globalRec。
- 将 env 的外部词法环境引用设置为 null。
- 返回 env。