gpt4 book ai didi

javascript - 理解基本的变量概念

转载 作者:行者123 更新时间:2023-11-30 07:14:54 24 4
gpt4 key购买 nike

我很难理解变量的交换。有许多有用的线程解释了如何实际执行此操作,但我很难理解它。我说的例子是:

var a = 1;
b = 2;
c = a;
a = b;
b = c;

在我的(非常基本的)理解中,我用简单的英语读到:每个声明的变量 c 保存变量 a 指向的任何内容。因为我们在声明之后赋值 a = b,下一个赋值不应该让 b 保持值 2(因为 c 指向 < strong>a 我们刚刚分配给 b)?

最佳答案

JavaScript 是 call/assign by value (更具体地说,call/assign by sharing)即当您将一个变量分配给另一个变量时,该变量的值将被复制。为变量分配新值从不 会改变另一个变量的值。它们之间没有隐含的联系。

更直观一点:假设 b 的值为 v,那么在 a = b 之后,我们有

b -> v
a -> v

您似乎认为我们有 a -> b -> v,但不是这种情况。

在你的例子中:

c = a; // c now holds the value 1
a = b; // a now holds the value 2
b = c; // b now holds the value 1

关于javascript - 理解基本的变量概念,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27784370/

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