Синтаксис
for(variableiterant in object) {
statement;
}
Параметры
variableiterant - имя переменно, для повторного действия, ссылка на свойство объекта или элемент массива.
object - имя объекта, выполняемого с помощью итерации.
statement - инструкция, выполняемая в каждой итерации.
Описание
Действие: в цикле обрабатываются свойства объекта или элемента массива, выполняется для каждого из них statement.
Некоторые свойства не могут быть перечислены действиями for или for…in. Например, встроенные методы объекта Array (Array.sort и Array. reverse) не включены в перечисление объекта Аrray, в том числе свойства клипа, _х и _у.
Конструкция For…in выполняет итерации по свойствам объектов в цепочке прототипов, выполняются итерации со свойствами дочернего объекта с for..in, также выполнит итерации со свойствами родительского объекта.
Примеры
Использование for…in для итерации по свойствам объекта:
myObject = { name: 'Таrа' , age:27, city: 'SanFrancisco' };
for (name in myObject) {
trace ("myObject." + name + " = " + myObject [name]) ;
}
Вывод этого примера следующий:
myObject.name = Тara
myObject.age = 27
myObject.city = San Francisco
Другой пример использования оператора вывода с for..in для итерации по специфическому типу дочернего объекта:
for (name "in myMovieClip) {
if (typeof (myMovieClip [name]) = "movieclip") {
trace ("I have a movieclip child named "+ name);
}
}
В следующем примере перечисляются дочерние данные клипа, и каждый из них переводит воспроизведение клипа на второй кадр их временной шкалы TimeLine. Клип RadioButtonGroup - родительский объект с несколькими дочерними:
_RedRadioButton_,_GreenRadioButton_и_BlueRadioButton.
for (var name in RadioButtonGroup) {
RadioButtonGroup[name],gotoAndStop(2);
}