|
|
|||||
Регистрация: Nov 2008
Сообщений: 109
|
Бага AS3?
Вобщем динамически создаю поля ввода, заношу в них значения, далее по этим значениям формирую параллельно 2 массива. Один массив который я использую, второй хроню как копию, чтобы были неизмененные исходные данные. По ходу работы меняется только второй массив, далее очищаю второй и записываю значения во второй из первого фором, любым способом, что push(), что arr1[i] = Arr2[i], не важно, эффект один и тот же: теперь когда меняем второй массив меняется и первый. Каким образом, особенно записывая значения первого во второй через push(), изменение второго влияют на первый?
|
|
|||||
Цитата:
А по теме: "Присваивание массива выполняется по ссылке, а не по значению. Когда одна переменная массива присваивается другой переменной массива, они обе относятся к одному и тому же массиву"((с) help)
__________________
2+2=5 Последний раз редактировалось BeDLiNt; 27.05.2009 в 13:44. |
|
|||||
Регистрация: Nov 2008
Сообщений: 109
|
Опечатался, arr2[i] = Arr1[i], но это я просто то что пробовал, а суть вопроса именно когда записываем при помощи push()...arr1.push(arr2[i])
|
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
А как вы формируете два массива?
|
|
|||||
скорее всего хранятся не объекты а ссылки на объекты которые вы и передаете из первого во второй...
__________________
Кто может делать - делает, кто не может делать - учит, кто не может учить - управляет... |
|
|||||
Регистрация: Nov 2008
Сообщений: 109
|
private var arrOfbPoints:Array = new Array(); private var copyOfArrOfbPoints:Array = new Array(); public function form():void { for (var j:int = 0;j < inputs.length;j++) { if (inputs[j].text == "") { arrOfbPoints[j].pValue = -1; copyOfArrOfbPoints[j].pValue = -1; } else { arrOfbPoints[j].pValue = int(inputs[j].text); copyOfArrOfbPoints[j].pValue = int(inputs[j].text); } } } Ошибку понял, всем спасибо))) Добавлено через 5 минут Цитата:
Просьба к модераторам закрыть тему. Последний раз редактировалось yorlin; 27.05.2009 в 13:50. |
Часовой пояс GMT +4, время: 17:20. |
|
« Предыдущая тема | Следующая тема » |
|
|