Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Переключатель в одну строку - как? (http://www.flasher.ru/forum/showthread.php?t=60411)

Flash_MMX 08.07.2004 18:36

Переключатель в одну строку - как?
 
Здравствуйте,


Подскажите, пожалуйста, как сделать переключатель в одну строку.
То есть: из "2" получить "-2", а при повторном прохождении этой строки обратно получить "2", и т.д. до бесконечности.
(Числа могут быть любыми 2-3, 10000-1, и т.д. Да и вообще это могут быть не числа, но любой пригодный флаг для On/Off или 1/-1.)

Главное сделать это в одну строку, т.к. модель:
if (x==2) { x=-2 }
if (x==-2) { x=2 }
будет всегда давать одно число ;-)

Надеюсь на вашу помощь!
Заранее благодарен!

Nox Noctis 08.07.2004 18:40

http://www.flasher.ru/forum/showthre...F0%E5%F9%E0%EB

Елё 08.07.2004 18:46

Круто
зачем интересно это вдруг всем понадобилось?

Код:

if (x==2) { x=-2 }
else if (x==-2) { x=2 }

Инвертирование переменной уже пора выносить в фак ;-)))

Flash_MMX 08.07.2004 19:11

Эт понятно, но меня интересует возможность не просто инвертирования *-1, а БИНАРНЫЙ ПЕРЕКЛЮЧАТЕЛЬ с задаваемыми значениями...
Типа задаём два числа X=1 и Y=1000. Вызываем функцию получаем - F=1, вызываем - F=1000, вызываем - F=1, вызываем - F=1000 .......

Елё 08.07.2004 19:15

я же написал
или тебе по какой то причине так не подходит?

Flash_MMX 08.07.2004 19:19

Мне нужно КОРОЧЕ. В одну строку. :)
(Просто эта бадяга будет делаться хз сколько раз в секунду, поэтому надо её максимально упростить(ускорить).) ;)

Nox Noctis 08.07.2004 19:19

Цитата:

Оригинал написал(а) Flash_MMX
Эт понятно, но меня интересует возможность не просто инвертирования *-1, а БИНАРНЫЙ ПЕРЕКЛЮЧАТЕЛЬ
ты во-первых изначально про это ничего не сказал, а во-вторых похоже не очень понимаешь что такое переключатель :))

переключатель - это вкл и выкл.
всё.

Код:

flag = 0;
trace(flag);
flag = !flag;
trace(flag);
flag = !flag;
trace(flag);
flag = !flag;
trace(flag);

...вот это переключатель.
а для чего ты его будешь использовать - твоё личное дело :)

я бы сделал как-то так.

Код:

values = [123, 345];
_global.flag = 0;
toggle = function () {
        _global.flag = !flag;
        return values[Number(flag)];
};
this.onMouseDown = function() {
        trace(toggle());
};


silin 08.07.2004 19:20

ival=[1,1000]
n=0
switcher=function(){return ival[n++%2]}
for(i=0;i<5;i++)trace(switcher())
Зы: то же самое ( не видел, что уже есть)

Flash_MMX 08.07.2004 19:31

Nox Noctis
Цитата:

ты во-первых изначально про это ничего не сказал,
Э.. ну да, признаюсь, не сказал... зато написал: ;)
Числа могут быть любыми 2-3, 10000-1, и т.д. Да и вообще это могут быть не числа, но любой пригодный флаг для On/Off или 1/-1.)

Цитата:

а во-вторых похоже не очень понимаешь что такое переключатель :))
переключатель - это вкл и выкл.
Не надо мои фразы обрывать :-/ Я написал:
БИНАРНЫЙ ПЕРЕКЛЮЧАТЕЛЬ с задаваемыми значениями...


Всем
Всем за варианты спасибо, но как я уже писал в начале темы, и раз уж ВЫ СТОЛЬ НЕВНИМАТЕЛЬНЫ - мне нужно В ОДНУ СТРОКУ. Остальные варианты я и сам знаю, ....

P.S.
А ты это заметил, NoxNoctis? ;)

silin 08.07.2004 19:44

2Flash_MMX : причем здесь СТРОКИ или ты полагаешь, что код записанный в одну строку работает бвстрее ? :D


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

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