скажем у меня есть массив, var animals = ["dog","cat","rat"];
Javascript Передавать по ссылке обходного
тогда я определяю var pets = animals;
тогда я называю pets.shift();
теперь, потому что браузер пройти по ссылке для массивов, если я сейчас позвоню animals
, я получаю ["cat","rat"]
.
Мой вопрос: есть ли способ обойти это, если я позже хотел бы использовать animals
в его неизмененной форме?
спасибо за подробный ответ. тонкое различие, которое я буду тратить некоторое время, обворачивая мой мозг. –
так что - если скопированный массив содержит и объект, который затем изменен, я мог бы иметь такую же проблему. –
Да.Вы можете посмотреть здесь: http://stackoverflow.com/questions/122102/most-efficient-way-to-clone-an-object –