Не уверен, если то, что я хочу, это возможно, ноОбновление массива при сохранении референс
Это работает:
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
переназначается?
Нет, JavaScript не имеет указателей. Единственный способ был бы, если бы вы поместили Array в Object, а затем обновили массив Object. Тогда любая ссылка на объект увидит обновление. – user2736012
Это великолепно! Я буду использовать объект и сохранить массив внутри, а затем сохранить ссылку на объект. Таким образом переназначение собственности не нарушит первоначальную ссылку. Пожалуйста, поместите это в ответ. – Fresheyeball