PDA

Просмотр полной версии : Циклическое создание переменных


ToXICus
23.12.2007, 19:27
Добрый день!
Решил потихоньку переходь на АС3. Почитываю хелп.
Но не могу разобраться, как создать в цикле пару переменных. В ас2 выходило. Попробую набросать код, а вы исправте что не так, а то в хелпе найти не вышло :(

for (var i:Number = 0; i<=10; i++) {
var ["some_var"+i]:Number = i; //тут у меня все и рухнуло:wacko: . Знаю, что таким методом переменные толком создать неьзя, но другого выхода не вижу. Помогите, кто знает
}

DarkLight
23.12.2007, 19:36
Так, как написали Вы, и в АС2не работало.
this["some_var"+i] = i;
Вместо this можно поставить другой объект, на котором создаем переменные.

ToXICus
23.12.2007, 19:51
Я не со старого содрал АС, просто с синтаксисом нового до конца не разобрался.
Спасибо.

wvxvw
23.12.2007, 20:05
for (var i:Number = 0; i<=10; i++) {
this["some_var"+i] = i;
}
trace(this["some_var"+(i-1)]);
Если нужно с типизацией - используйте flash.utils.Proxy, flash.utils.flash_proxy классы. (Вместо setProperty().)

BlooDHounD
23.12.2007, 22:59
а синтаксис и не менялся. добавился функционал. синтаксис тот же.

Ноябрь
24.12.2007, 03:04
Почему бы не использовать массив?
ИМХО, добавляются функции работы с массивами.

ToXICus
25.12.2007, 03:27
Массивом не подойдет.
Просто один класс специфический юзаю, не все, к сожалению, умесно.