gpt4 book ai didi

javascript - 指向同一数组的指针

转载 作者:行者123 更新时间:2023-11-29 18:46:42 25 4
gpt4 key购买 nike

我将 arr3 分配给了 arr 点,这在我检查相等性时是正确的。但是当我通过将arr3的所有元素除以5来更改arr的内容时,arr似乎并没有反射(reflect)出这些变化。由于我有 C++ 背景和 Javascript 初学者,您能告诉我在分析 Javascript 变量时我是否用指针做了错误的类比?据了解 arr3 和 arr 指向同一个数组。如果其中一个更改了数组内容,另一个也会看到该更改,但似乎这个类比不起作用...

let arr = [6, 10, 14, 18];
let arr3 = arr;
console.log("arr3: " + arr3);
//arr3: 6,10,14,18
console.log(arr3 == arr);
//true

arr3 = arr.map(function (element)
{
return element / 5;
});
console.log("arr3 after map: " + arr3);
//arr3 after map: 1.2,2,2.8,3.6
console.log("arr after arr3/5 map: " + arr);
//arr after arr3/5 map: 6,10,14,18

最佳答案

map() 函数 returns a new array ,所以 arr3 现在指向一个新数组,该数组由调用 arr.map(... 返回,而 arr 仍然是指向原数组的原地址。

关于javascript - 指向同一数组的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53249310/

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