1

不确定我想要的是否可行,但是

这有效:

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

4

2 回答 2

2

不,JavaScript 没有指针。唯一的方法是将数组放入对象中,然后更新对象的数组。然后对 Object 的任何引用都会看到更新。

var pointer = arr1 = {array:['a','b','c']};
arr1.array = ['e','f'];

console.log(arr2.array);    // ['e','f']
console.log(pointer.array); // ['e','f']
于 2013-09-10T18:01:48.677 回答
1

Javascript没有指针。

@user2736012 在评论中给出的建议是一个好主意,即将数组放入对象中,然后更新对象的数组。然后对 Object 的任何引用都会看到更新。

于 2013-09-10T17:58:43.230 回答