Kev*_*ker 0 javascript arrays pointers reference
假设我有两个javascript数组,如下所示:
arrA = [1,2,3]
arrB = [4,5,6]
Run Code Online (Sandbox Code Playgroud)
有没有办法可以用不同的变量名称引用它们然后再路上?如果我这样做:
arrC = arrA
arrD = arrB
Run Code Online (Sandbox Code Playgroud)
它创建初始数组的副本,而不是指向它们的指针/引用.所以,如果我搞砸了价值arrC,arrA就不会更新.有办法解决这个问题吗?
谢谢.
不,它不会复制.如果你改变了arrC,它也会改变arrA.
试试这个 :
var arrA = [1,2,3];
var arrC = arrA;
arrC.push(26);
console.log(arrA);
Run Code Online (Sandbox Code Playgroud)
你会[1, 2, 3, 26]在控制台中看到.
反之亦然:如果你想制作副本,你必须明确地做,例如
var arrC = arrA.slice();
Run Code Online (Sandbox Code Playgroud)