2013-09-01 271 views
0

我創建了一個固定大小爲5的數組,但是當我嘗試將元素插入到數組中時,該元素被插入到第6個位置。任何人都可以告訴我如何從數組的第一位插入值? PS:因爲元素是隨機插入的,所以我不能這樣做:songTitles [5] =「生日快樂」;將元素插入到數組Actionscript3中

一些參考資料如下:

myRes = new Array(5);

 if(e.keyCode == 65){ 

     myRes.push(word1.getLabel()); 
     trace(myRes); 
    } else if (e.keyCode == 83) { 

     myRes.push(word2.getLabel()); 
     trace(myRes); 

    } else if (e.keyCode == 68) { 

     myRes.push(word3.getLabel()); 
     trace(myRes); 

    } else if (e.keyCode == 70) { 

     myRes.push(word4.getLabel()); 
     trace(myRes); 

    } else if (e.keyCode == 71) { 

     myRes.push(word5.getLabel()); 
     trace(myRes); 

    } 

結果我得到:

,,,,,一個 ,,,,, A,S ,,,,, A,S,F

+0

當你聲明數組時,你有5個長度的原因嗎? – putvande

+0

這是項目標準所要求的。 – user1805430

回答

2

嘗試 邁爾斯= new Array(); 當您創建具有固定大小的閃存陣列時,閃存會填充空值。如果你不希望你的數組長度超過5,只需在你的keyboardevent處理函數中插入一個條件檢查長度。

+0

是的,我也可以這樣做。我可以問你一個問題嗎?基本上,我有三個類 - main,function1和function2(數組)。我在main中定義了一個數組的值。在函數1中,我需要用main中數組的參數調用函數2。那麼我怎樣才能將數組從main傳遞給function1? – user1805430

+0

調用您的類功能可能會產生誤導。也請嘗試使用大寫字母作爲類。 function1需要對main中聲明的數組的引用,您可以事先將它傳遞給該類。你真的必須從function1調用function2嗎?簡化你的課程現在可能有點工作,但最後還是要節省時間。 –

+0

在函數1中聲明它: 'public var mainArray:Array;' 在主函數中給它賦值: 'function1.mainArray = myRes;' –