【发布时间】:2013-07-26 04:33:45
【问题描述】:
出于好奇,我有一个问题。所以我研究了 JS 如何处理变量赋值,我明白了。 How does variable assignment work in JavaScript?
但在我正在处理的以下代码中似乎没有表现出相同的原则:
var temp = playlist1[0];
playlist1[0] = playlist1[1];
playlist1[1] = temp;
我知道这是交换数组元素的标准方法。但是如果 temp 指向playlist1[0],而playlist1[0] 的内容更改为playlist1[1] 的内容,那我怎么没有连续两个playlist1[1] 值呢?
【问题讨论】:
-
我将其投票为重复,因为您链接的问题中的答案就是您问题的答案。
-
@EvanTrimboli 我认为这个问题是公平的,因为它要求对现有问题进行进一步澄清。另一个问题很老,可能不再受到监控。
-
旧与否,答案都是一样的。
-
OP 辩称,他提出这个问题是为了进一步理解该主题。经过初步解释(不是来自“已经知道”的地方),链接的问题没有清楚地回答问题。在最终解释后(来自“已经知道”的地方),OP 会看到链接的问题如何提供帮助;作为参考文本而不是学习文本。但是 OP 坚持认为这个问题增加了链接问题的价值并加深了学习,以避免可能将变量误解为对象指针概念。
标签: javascript pass-by-reference