Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Action script 2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=49)
-   -   Переменные в цикле (http://www.flasher.ru/forum/showthread.php?t=50022)

Alol 07.10.2003 17:43

Переменные в цикле
 
Буду очень благодарен, если кто объяснит, где же я "уперся" в коде.
Получаю 8 переменных (delta1, delta2...) из внешнего файла.
Как мне переприсвоить их в другом клипе. Удалось сделать только так:
for (i=1; i<=8; i++) {
if (i==1) {
delta1 = _root.delta1;
} else if (i==2) {
delta2= _root.delta2;
} else if (i==3) {
delta3 = _root.delta3;
} else if (i==4) {
delta4 = _root.delta4;
} else if (i==5) {
delta5 = _root.delta5;
} else if (i==6) {
delta6 = _root.delta6;
} else if (i==7) {
delta7 = _root.delta7;
} else if (i==8) {
delta8 = _root.delta8;
}
}

Usnul 07.10.2003 19:38

for (i=1; i<=8; i++) {
delta[i] = _root.delta[i];
}

john 07.10.2003 20:05

2Usnul - ошибка, про массивы в постановке задачи ничего не говорилось.

вот так должно работать:

for (i=1; i<=8; i++) {
this["delta"+i] = _root["delta"+i];
}

2Alol.

Вопрос относится по большей части к Action Script v 1.0. Точнее к основам программирования. А это другой раздел форума.

Штрек 08.10.2003 04:26

Принимай сразу в свой клип.
Чего ты их в Рут принимаешь?
Хотя это и не по теме.

Alol 08.10.2003 10:49

2john
Спасибо за верное решение проблемки! Как говорится, то, что доктор прописал. Да и в синтаксисе кое-что новое узнал.

wwwita 11.10.2003 01:20

Цитата:

for (i=1; i<=8; i++) {
this["delta"+i] = _root["delta"+i];
}
?

а eval('delta'+i) = eval('_root.delta'+i);
теперь разве не работает?

Usnul 11.10.2003 22:03

Ну сорьки :)

nuran 13.10.2003 08:54

Цитата:

Оригинал написал(а) wwwita


?

а eval('delta'+i) = eval('_root.delta'+i);
теперь разве не работает?

во во!
Не всегда this корректно работает. А тот, кто вообще не понимает смысл этой команды вообще может запутаться.

lexass 13.10.2003 10:32

А кто вам разрешил "евал" слева от = юзать?
 
Цитата:

Оригинал написал(а) nuran


во во!
Не всегда this корректно работает. А тот, кто вообще не понимает смысл этой команды вообще может запутаться.

Это почам this не корректно работает?

eval('delta'+i) = eval('_root.delta'+i);

ето не прально
и не грите что все компелится и все работает!!!

nuran 13.10.2003 10:43

this:

Бывают всякие ошибки с прототипами к примеру (только не у меня).

Я лично люблю eval. Хоть оно и старое, но надёжное.

И я знаю что применение this в этом коде вполне допустимо.
Но в прототипах это непримениме. Только если оно там нужно.


Часовой пояс GMT +4, время: 21:02.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.