gpt4 book ai didi

javascript - 改变变量值的方法有哪些?

转载 作者:行者123 更新时间:2023-12-01 02:34:25 26 4
gpt4 key购买 nike

我之前读过,更改变量保存的值的唯一方法是使用赋值运算符(=+=、..)
但在这个例子中来自 mdn , nums 变量通过更改赋值中使用的数组之一而不使用赋值运算符来返回两个不同值。

var num1 = [[1]];
var num2 = [2, [3]];

var nums = num1.concat(num2);
console.log(nums);

num1[0].push(4);
console.log(nums);

但是,当我删除嵌套数组并直接将 4 推送到 num2 数组时,打印的值不会改变。
检查这个example

最佳答案

concat函数返回一个新数组,由两个数组的元素组成。

在第一种情况下,num1 数组和 nums 包含对同一内部数组的引用,因此当您更改它时,它会反射(reflect)在两者中。

在第二种情况下,数组包含数字,并且数组之间没有共享任何内容。这就是为什么当你插入其中一个时,另一个不会改变。

至于赋值困惑,nums 始终指向同一个数组,直到您为 nums 分配新值为止。这并不意味着您不能更改数组本身的内容。

关于javascript - 改变变量值的方法有哪些?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48044872/

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