2010-02-01 69 views
0

我在處理actionScript中的數組時遇到了問題。我通過array.pop()刪除了數組的最後一個元素。之後,我想將這個被移除的顯示對象放回到數組的開頭:array.unshift(object)。該對象現在是數組的第一個元素,但它仍舊保留其舊標籤(最後一個元素的編號)。因此,我無法更新顯示對象的位置(圖形)。是否有可能「重新索引」陣列?如何重置數組索引? actionscript3

+0

這個「對象」是怎麼樣的?是標籤「對象」的屬性? – bhups 2010-02-01 09:05:43

+0

該標籤是一個數字「我」,因爲該數組將在for循環中處理。因此不移位看起來像這樣:array.unshift(array [i]); 陣列[我]將保持它的標籤,當我把它再次在陣列的開始,如何將標籤再次設置爲零? – algro 2010-02-01 09:24:50

回答

0

A pop ped元素不會保留它的索引,因爲它將被取出數組。如果您在pop ping array[i]之後嘗試登錄unshift(array[i]),則會導致引用不再存在的索引時出錯。

爲了完成您所描述的內容,您可以說array.unshift(array.pop()),然後在array[0]處引用已移動的元素。

我在創建無限循環幻燈片時使用了上述方法。

編輯。

看來我誤解了你的問題。 IIRC不可能操縱你正在遍歷的數組。

請發佈您遇到麻煩的片段,以獲得更有教養的答案。