gpt4 book ai didi

javascript - 控制台窗口如何在内部处理 JavaScript 算术赋值?返回值从哪里来?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:41:32 26 4
gpt4 key购买 nike

最近我一直在玩 JavaScript,我正在学习的这门类(class)一直强调从内部了解 JavaScript 的重要性。

所以我有一个奇怪的问题,主要是我想了解 JavaScript 的内部工作原理。

假设我在控制台中进行以下计算:

>> x = 1
< 1
>> x = x + 2
< 3

那里返回的“3”,它究竟来自哪里?

比如它是先计算'x + 2',然后返回3并将内存中x的值设置为3?或者它会评估“x + 2”,将其保存在 x 的内存空间中,然后从同一内存空间返回 x 的值?

或者甚至可能只是在它的内存空间中改变 x 的值而不移动它,然后返回 x 的值?

如果有任何资源可以让我了解更多 JavaScript 的内部工作原理,从而回答更多此类问题,我也将不胜感激。

谢谢!

最佳答案

如果您曾经在基于终端的系统(如 Unix)上工作过,就会更容易理解发生了什么。将控制台想象成一种 bash 终端。如果您在命令行终端中键入命令并按下回车键,它将以输出或有时甚至是错误作为响应。

Chrome 控制台中也发生了类似的事情。每次您打开 Chrome 控制台时,它都会保留一个 session ,用于存储您的变量和函数。当您调用或使用相同的变量或函数时,它只是返回该值。

顺便说一句,当你输入类似

的内容时
>> x = 1

内部发生的事情是在全局 window 对象中创建了一个名为 x 的新属性。所以 x = 1window.x = 1 相同。这就是控制台如何记住您的分配并在您稍后调用它时使用它的方式。

我希望我能把你弄糊涂了,所以我就到此为止了。

关于javascript - 控制台窗口如何在内部处理 JavaScript 算术赋值?返回值从哪里来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37337889/

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