gpt4 book ai didi

Javascript,ES5+还有激活对象吗?

转载 作者:行者123 更新时间:2023-11-29 16:36:49 25 4
gpt4 key购买 nike

正在阅读有关 javascript 执行上下文的一些信息。我正在阅读以下内容 article Rupesh Mishra 的。

文章指出,每次调用新函数都会创建一个新的执行上下文。执行上下文确实有 2 个阶段创建阶段和执行阶段,其中代码逐行执行。

据说在创建阶段 JS 引擎做了 3 件事:

  1. 确定this的值
  2. 创建作用域链
  3. 创建激活或变量对象

这是对激活对象的解释:

Creates the Activation object or the variable object: Activation object is a special object in JS which contain all the variables, function arguments and inner functions declarations information. As activation object is a special object it does not have the dunder proto property.

问题:

ES5+还有这个激活对象结构吗?如果不是,执行上下文创建阶段的当前步骤是什么?

最佳答案

不,ES5(及更高版本)不再使用标准的 JS 对象来存储变量。它使用 lexical environments (带有 this 值和范围链)包含 environment records存储变量值的各种类型。

What are the current steps of the creation phase of an execution context?

Section 10.4 Establishing an Execution Context谈论那个。

行为与 ES3 所做的并无太大区别(毕竟旧代码仍然有效),只是使用新术语进行描述。

关于Javascript,ES5+还有激活对象吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50469075/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com