Цикл по массиву, установить свойство каждого элемента? - PullRequest
2 голосов
/ 10 декабря 2011

Хорошо, очень просто: есть массив, содержащий 3 объекта.Каждый объект имеет уникальное свойство, называемое «ID», со значениями 1, 2 или 3.

Один из объектов удаляется.

Теперь цель состоит в том, чтобы обновить свойство ID каждого объекта, соответствующего новому значению array.length.

Так, например, объект с идентификатором 2 был удален.Остальные объекты в массиве будут иметь значения идентификаторов 1 и 3 соответственно.

Таким образом, цель состоит в том, чтобы перебрать массив и обновить свойства идентификатора до 1 и 2 (вместо 1 и 3).

Итак, я думаю, вопрос в том, как написать цикл для обновления общего свойства каждого элемента в массиве.Благодарю.

Ответы [ 3 ]

2 голосов
/ 10 декабря 2011

Вы можете использовать цикл 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;
0 голосов
/ 11 декабря 2013
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;
}
0 голосов
/ 10 декабря 2011
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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...