![]() |
|
||||||||||
|
|||||
|
Регистрация: Apr 2012
Сообщений: 70
|
Добрый вечер!
Как скопировать двумерный (массив массивов), чтоб при изменении копии исходник оставался без изменении? Пробовал concat(); - копируется, но в исходном массиву данные так же изменяется =( |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Цитата:
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Apr 2012
Сообщений: 70
|
private var _map:Array; private var _geoData:Array; ///....... _map = _ogmoImporter.getImportedMap(); // это самописный класс для импорта, метод возвращает массив _geoData = _map.concat(); // попытка скопировать пробовал вот так и так _map = _ogmoImporter.getImportedMap().concat(); _geoData = _ogmoImporter.getImportedMap().concat(); насколько сильно медленнее будет работать этот метод от concat()? |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
А так не пробовали?
var arr:Array = [2, 12, 85, 06]; var bar:Array = arr.concat(); bar[0] = 8; trace(arr[0]); // 2 Простые типы копируются по значению. Если у Вас не копируются — значит они не простые. Либо проверяете неправильно. Все "чудеса" от невнимательности.
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Apr 2012
Сообщений: 70
|
Ваш пример работает. Но если с двумерным массивом - не рабоет
может каждый массив в массиве надо копировать по отдельности? =)) Глупость сморозил походу... |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Естественно, потому что данные в массиве, которому Вы делаете concat() — не int, а Array.
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Apr 2012
Сообщений: 70
|
Теперь понял, спасибо большое!
|
![]() |
![]() |
Часовой пояс GMT +4, время: 16:43. |
|
|
« Предыдущая тема | Следующая тема » |
|
|