Просмотр полной версии : переконвертировать a="b" в a=b командой?
Я не знаю как правиольно задать вопрос тк. не знаком с специальными терминами. Потому опишу чего собсно я хочу узнать.
Можно ли при помощи какой-нибудь команды переконвертировать значение переменной в имя переменной? или на оборот?
т.е. у меня есть переменная a. у которой значение "b". У меня также есть переменная b у которой значение "с". Нужно перевести значение переменной a в переменную b.
b = "c";
a = "b";
convert a to a=b;
Написать просто a = b я не могу потому что значение передаётся через функцию и оно изначально в кавычках. А в самой функции я бы хотел использовать одну и ту же переменную и её значение в разных случаях. А случаи бывают либо в кавычках либо без.
Сама функция мультизадачная. Т.е. используется 3 4 раза с разными параметрами.
b = "c";
a = "b";
trace (this[a])
Да не то блин.
a = "b" <=> a = b
Убрать ковычки со значения переменной a.
В PHP это просто реализовано:
$login = 'Ader';
$var_name = 'login';
echo $$var_name;
a = "b";
b = "c";
trace(eval(a));
так Вас устроит?
можно так написать?
eval('mc.'+target_mc+'.lineStyle(BorderSize, BorderColor, 100)');
можно так написать?
eval('mc.'+target_mc+'.lineStyle(BorderSize, BorderColor, 100)');
можно так написать:eval('mc.'+target_mc+'.lineStyle(BorderSize, BorderColor, 100)');
Ну так напиши и оттрейсь - что выдаст.
Не работает так :(
Я создаю мувиклип
mc.createEmptyMovieClip(target_mc, level);
потом мне нужно к нему как-то обратится
mc.+target_mc+._alpha = 0;
значение target_mс я передаю через функцию, где переменная target_mc = "movieclip";
Я не могу использовать createEmptyMovieClip имя клипа без кавычек, так же как я не могу обращатся к уже созданному клипу в кавычках.
Вот весь код чтоб понятнее было:
makeBox = function (mc, target_mc, level, BorderSize, BorderColor, FillColor, tsX, tsY, tX, tY, mask) {
mc.createEmptyMovieClip(target_mc, level);
// тут нужно переконвертировать target_mc = "fill_mc"; в target_mc = fill_mc; Но я немогу :(
mc.target_mc.lineStyle(BorderSize, BorderColor, 100);
mc.target_mc.beginFill(FillColor, 100);
mc.target_mc.moveTo(tsX, tsY);
mc.target_mc.lineTo(tX, tsY);
mc.target_mc.lineTo(tX, tY);
mc.target_mc.lineTo(tsX, tY);
mc.target_mc.endFill();
if (mask == true) {
mc.setMask(mc.target_mc);
}
};
// вызов функции
makeBox(thumbs, "fill_mc", 0, 2, 0xffffff, 0x999999, 0-margin*2, 0-margin*2, 500+margin*2, 100+margin*2, false);
Я конечно понимаю что я извращаюсь - можно сделать по другому, но просто хочется знать можно ли вообще так делать. Делают ли так?
Да не то блин.
a = "b" <=> a = b
Убрать ковычки со значения переменной a.
В PHP это просто реализовано:
$login = 'Ader';
$var_name = 'login';
echo $$var_name;Голову включите
b = "c";
a = "b";
trace (a);
a = this[a];
trace (a);
после того как я пишу внутри функции target_mc = this[target_mc];
target_mc становится undefined.
Голову включите
Взаимно ;)
безнадежно. тебе дважды ответили. this и eval извинись и в поиск.
Взаимно ;)Вам надо все разжевать и в рот положить?
Вариант 1
makeBox = function (mc, target_mc, level, BorderSize, BorderColor, FillColor, tsX, tsY, tX, tY, mask) {
mc.createEmptyMovieClip (target_mc, level);
// тут нужно переконвертировать target_mc = "fill_mc"; в target_mc = fill_mc; Но я немогу :(
mc[target_mc].lineStyle (BorderSize, BorderColor, 100);
mc[target_mc].beginFill (FillColor, 100);
mc[target_mc].moveTo (tsX, tsY);
mc[target_mc].lineTo (tX, tsY);
mc[target_mc].lineTo (tX, tY);
mc[target_mc].lineTo (tsX, tY);
mc[target_mc].endFill ();
if (mask == true) {
mc.setMask (mc[target_mc]);
}
};
Вариант 2
makeBox = function (mc, target_mc, level, BorderSize, BorderColor, FillColor, tsX, tsY, tX, tY, mask) {
var mcA = mc.createEmptyMovieClip (target_mc, level);
// тут нужно переконвертировать target_mc = "fill_mc"; в target_mc = fill_mc; Но я немогу :(
mcA.lineStyle (BorderSize, BorderColor, 100);
mcA.beginFill (FillColor, 100);
mcA.moveTo (tsX, tsY);
mcA.lineTo (tX, tsY);
mcA.lineTo (tX, tY);
mcA.lineTo (tsX, tY);
mcA.endFill ();
if (mask == true) {
mc.setMask (mcA);
}
};
Вам надо все разжевать и в рот положить?
А разве не для этого этот форум существует?
ВСЕМ ОГРОМНОЕ СПАСИБО!!!!!!!!!!!!!!!!!!!!!!!!!!!! И особенно вам iNils!
безнадежно. тебе дважды ответили. this и eval извинись и в поиск.
Извените за то что вы плохо и непонятно обьясняете :))))
Ну ладно. И ты прости до кучи ))
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.