Примеры:
Типичный цикл for, который просто считает от 1 до 10.
for (var i = 1; i <= 10; i++) { trace("Число: "+i);}
Вот эквивалент этого примера, только составленный с помощью цикла while:
var i = 1;while (i <= 10) { trace("Число: "+i); i++;}
Допустим, нам нужно управлять в цикле более чем одним фактором.
В цикле forможно использовать более одной переменной-итератора, разделив их запятой.
for (var i = 1, j = 10; i <=10; i++, j--) { trace("i увеличивается: " + i); trace("j уменьшается: " + j);};
Совместимость:
Используется с 5-ой версии Flash
for...in - Цикл, используемый для перечисления свойств объекта
for...in
Цикл, используемый для перечисления свойств объекта.
Синтаксис:
for (var thisProp in object) { statements // Предложения обычно используют thisProp}
Вместо повторения серии предложений, пока заданное проверочное выражение не даст значения false , цикл for-inосуществляется по одной итерации для каждого свойства для заданного объекта.
Предложения for-inне требуют явного обновляющего предложения, поскольку число итераций цикла определяется числом свойств рассматриваемого объекта.
Предложения statements выполняются по одному разу для каждого свойства object ;
На каждой итерации цикла переменная thisProp временно хранит строку, которая содержит имя свойства объекта, перечисляемого в данный момент. Это значение строки можно использовать во время каждой итерации, чтобы получить доступ к каждому свойству и обработать его.
Простейшим примером цикла for-inявляется сценарий, который перечисляет свойства объекта.
Примеры:
Создание объекта, а затем перечисление по пунктам его свойств с помощью цикла for-in
var ball = new Object();ball.radius = 12;ball.color = "red";ball.style = "beach";for (var prop in ball) { trace("balls has the property " + prop);}
Пример выведет следующее
balls has the property style balls has the property color balls has the property radius
Т.к. prop хранит имена свойств ball как строки, для извлечения значений этих свойств можно использовать prop с оператором []:
for (var prop in ball) { trace("balls." + prop + " is " + ball[prop]);}
Пример выведет:
ball.style is beach ball.color is red ball.radius is 12
Стоит обратить внимание, что свойства объекта, просматриваемые в цикле for-in, нумеруются в непредсказуемом порядке. Кроме того, предложения for-inне всегда перечисляют все свойства объекта. Если объект определен пользователем, перечисляются все свойства, включая унаследованные.
Но некоторые свойства встроенных объектов предложением for-inпропускаются. Например, этим циклом не перечисляются методы встроенных объектов. Если вы хотите использовать предложение for-inдля работы со свойствами встроенного объекта, сначала создайте проверочный цикл для определения доступных свойств объекта.
Извлечение значений свойств с помощью цикла for-inпредоставляет также отличную возможность обнаружения клипов, присутствующих на временной диаграмме.
Пример:Заполнение массива динамически идентифицируемыми клипами
var childClip = new Array();var childClipCount = 0;for(i in _root) { thisItem = _root[i]; if(typeof thisItem == "movieclip") { // Обратите внимание на постфиксный оператор инкрементирования childClip[childClipCount++] = thisItem; }}// После заполнения массива можно использовать его// для обработки клипов, которые в нем находятся// Поместить первый клип у левого края рабочего столаchildClip[0]._x = 0// Поместить второй клип у верхнего края рабочего столаchildClip[1]._y = 0
В приведенном примере при использовании в предложении for-inфункция typeof дает удобный способ нахождения всех экземпляров клипа на временной диаграмме.
Когда клипы определены, их можно присвоить массиву для проведения программной обработки.
Цикл for-inтакже можно использовать для извлечения элементов массива. В этом случае цикл примет вид:
for (var thisElement in array) { statements;}
Пример:Перечисление элементов массива
var myArr = [123, 234, 345, 456];for( var elem in myArr) { trace(myArr[elem]);}
Совместимость:
Используется с 5-ой версии Flash
fscommand - Передача данных браузеру
fscommand
( Глобальная функция )
Позволяет отправить данные программе, которая запустила данный клип
Синтаксис:
fscommand(command, arguments)
Аргументы:
Описание:
С помощью функции fscommand(), фильм Flash может связываться с автономным проигрывателем или приложением-хозяином проигрывателя:средой, в которой выполняется Flash Player (веб-браузером или Macromedia Director).
Читать дальше