循环遍历数组,设置每个元素的属性?

时间:2011-12-10 00:06:59

标签: actionscript-3

好的,非常简单:有一个包含3个对象的数组。每个对象都有一个名为“ID”的唯一属性,其值为1,2或3。

其中一个对象被删除。

现在的目标是更新与新array.length值对应的每个对象的ID属性。

例如,ID为2的对象已被删除。数组中的其余对象将分别具有ID值1和3。

因此,目标是遍历数组并将ID属性更新为1和2(而不是1和3)。

所以我想问题是如何编写一个循环来更新数组中每个元素的公共属性。谢谢。

3 个答案:

答案 0 :(得分:2)

您可以使用for循环遍历数组,如walkietokyo的答案,或者您可以使用方法闭包:

myArray.forEach ( function ( item:*, i:int, arr:Array) : void { item.ID = i; } );

或while循环:

var i:int = -1;
while (++i < myArray.length) myArray[i].ID = i;

答案 1 :(得分:0)

for (var i:uint = 1; i <= myArray.length; i++) {
    myArray[i].ID = i;
}

循环的一般信息: http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7fcf.html

答案 2 :(得分:0)

var i:uint; // for speed keep out of the loop
var arrayLength = myArray.length // for speed keep out of the loop

for (i = 0; i < arrayLength; i++) {
    myArray[i].ID = i;
}