Flash / Flex / ActionScript/Array/copy

Материал из Web эксперт
Версия от 08:14, 26 мая 2010; Admin (обсуждение | вклад) (1 версия)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Copying Objects

 
package{
  import flash.display.Sprite;
  
  public class Main extends Sprite{
    public function Main(){
        var arrayA:Array = new Array("a", "b", "c", "d");
        var arrayB:Array = arrayA;
        arrayB.push("e", "f", "g", "h");
        trace(arrayA.length); // Outputs 8
    }
  }
}



If you want to create a copy of the array, you can create a new array and use a for statement to copy each item from arrayA to arrayB

 
package{
  import flash.display.Sprite;
  
  public class Main extends Sprite{
    public function Main(){
        var arrayA:Array = new Array("a", "b", "c", "d");
        var arrayB:Array = new Array();
        for(var i:int = 0; i < arrayA.length; i++) {
            arrayB[i] = arrayA[i];
        }
        arrayB.push("e", "f", "g", "h");
        trace(arrayA.length); // Outputs 4
        trace(arrayB.length); // Outputs 8
    }
  }
}