Показать сообщение отдельно
Старый 19.07.2013, 00:38
KumoKairo вне форума Посмотреть профиль Отправить личное сообщение для KumoKairo Найти все сообщения от KumoKairo
  № 2  
Ответить с цитированием
KumoKairo
 
Аватар для KumoKairo

Регистрация: Jan 2013
Сообщений: 550
Записей в блоге: 1
Для простого массива со строками или числами можно сделать рас:
Код AS3:
taget = source.slice();
или два
Код AS3:
taget = source.concat();
второй способ вроде быстрее.

Для сложных массивов (для массивов с массивами или массивов с объектами) адоб предлагает использовать следующую функцию:
Код AS3:
import flash.utils.ByteArray; 
 
function clone(source:Object):* 
{ 
    var myBA:ByteArray = new ByteArray(); 
    myBA.writeObject(source); 
    myBA.position = 0; 
    return(myBA.readObject()); 
}
Пруф ссылка на сайт с адобовским хелпом:
http://help.adobe.com/en_US/ActionSc...0204-7ee7.html

Проверка методов клонирования массивов на скорость:
http://flashlabs.wordpress.com/2009/...cat-or-slice0/
Если лень:
slice - 30ms
concat - 13ms
clone - 230ms