0

我在 AS#3 和数组中需要一些帮助 基本上我在将项目推入有错误的二维数组时遇到了麻烦。以下是我拥有并尝试使用的内容:

    var j = 0
    var i = 0
    var mixerArray:Array = new array();
    function Mixer()
    {
    optionLenght = gridOption.sequence_txt.text;// == 8
    track_list = gridOption.track_text.text;// == 4


    for (j = 0; j <track_list; j++)
    {
    make_tracks();
     for (i = 0; i <optionLenght; i++)
    {
       item_inside_track();
    }
    }

   function make_tracks(){
   tracks = new Tracks();//a large box
   MixerArray[j].push(tracks);
   }
   /* Make little boxes inside big box
   ..................................................
   */
   function item_inside_track(){
   box= new Box();//littlebox
   MixerArray[j][i].push(box); // iwant to push this box into track[j]
    }

基本上我试图创建一个数组来存储值内的值,例如

   MixerArray()
   [0]TRACK1  =  [0]//littlebox ,[1]//littlebox, [2]//littlebox [3]//littlebox etc to 8
   [1]TRACK2  =  [0]//littlebox ,[1]//littlebox, [2]//littlebox [3]//littlebox etc to 8
   [2]TRACK3  = [0]//littlebox ,[1]//littlebox, [2]//littlebox [3]//littlebox etc to 8
   [3]TRACK4  = [0]//littlebox ,[1]//littlebox, [2]//littlebox [3]//littlebox etc to 8

这必须是动态的,因为它会不断变化..我已经削减了 addchilds 和其他代码以将其最小化到源区域。

4

1 回答 1

0

所以你基本上是在创建一个数组数组。这里的问题是您试图将项目推送到第二个数组的元素中。

MixerArray[j][i].push(box); // iwant to push this box into track[j]

如果你想推入 J 数组,你只需要这样做:

MixerArray[j].push(box);

但是,您需要先创建 MixerArray 中包含的不同数组。只需在初始化函数中或在第一个函数开始时将新数组推入 MixerArray。您的代码的另一个问题是您使用了:

var mixerArray:Array = new array();
在您使用的其余代码中:
MixerArray

进行更改并告诉我它是否有效!

于 2013-05-13T03:22:34.237 回答