不确定我想要的是什么,但是
这有效:
pointer = arr1 = ['a','b','c'];
arr1.splice(0, 1);
console.log(pointer); // ['b','c']
我想要什么,但不起作用:
pointer = arr1 = ['a','b','c'];
arr1 = ['e','f'];
console.log(pointer); // desired ['e','f']
console.log(pointer); // reality ['a','b','c']
除了每次重新分配pointer
时不断重新更新arr1
变量之外,还有什么方法吗?
答案 0 :(得分:2)
不,JavaScript没有指针。唯一的方法是将数组放入Object中,然后更新Object的数组。然后对Object的任何引用都会看到更新。
var pointer = arr1 = {array:['a','b','c']};
arr1.array = ['e','f'];
console.log(arr2.array); // ['e','f']
console.log(pointer.array); // ['e','f']
答案 1 :(得分:1)
Javascript没有指针。
@ user2736012在注释中给出的建议是一个好主意,即将Array放入Object中,然后更新Object的Array。然后对Object的任何引用都会看到更新。