![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Aug 2009
Адрес: Earth
Сообщений: 41
|
после пивопития начал углубляться в AS3 и возник один вопрос коварный
![]() как можно получить собственное имя переменной? например: var dd : uint; trace(dd.name); <<-- есть ли в AS3 что-то типа такого? в результате должно вывестись на экран имя переменной, то есть dd или это я еще не протрезвел? ![]() заранее сенкс |
|
|||||
|
Регистрация: Aug 2009
Адрес: ХМАО
Сообщений: 47
|
маловероятно. разве подобный механизм есть в языках программирования?
И собственно зачем? |
|
|||||
|
[+6 23.11.09]
|
Бред не льзя, так не программируют!
|
|
|||||
|
МЕГАФЛЭШЕР
Регистрация: May 1999
Адрес: Россия, Москва
Сообщений: 1,181
|
меня в последнее время цепляют контекстно зависимые операции, добавляю это в MPS поддержку AS
например index здесь не элемент языка, а специальная конструкция "операция" генератор кода конвертирует этот код в var listIndex:int = 0; for each (var e:Element in list){ listIndex++; trace(listIndex); } возможно такая конструкция и нужна, но чаще всего просто при логгинге. а еще проще сделать какую конструкцию вида Последний раз редактировалось john; 12.08.2009 в 23:57. |
|
|||||
|
А какой в этом смысл?
Это ж не питон, с извращенными хитросплетениями, тут все на уровень интеллигентнее. Скажем так, это просто не нужно.
__________________
Дело не в тебе |
|
|||||
|
МЕГАФЛЭШЕР
Регистрация: May 1999
Адрес: Россия, Москва
Сообщений: 1,181
|
Цитата:
![]() Но соглашусь что variableName наверное не нужно. Последний раз редактировалось john; 13.08.2009 в 00:00. |
|
|||||
|
Регистрация: Aug 2009
Адрес: Earth
Сообщений: 41
|
4: mry, WRC_S, john, AL.exe
хотел попроще реализовать запись в Local Shared Objects (LSO)... например, если необходимо сохранять различные переменные в LSO, то необходимо так же указывать объекту LSO.data какое-то свойство, что бы в это свойство записать значение переменной т.е. если необходимо сохранить переменную dd, то пишем LSO.data.dd = dd; если необходимо сохранить переменную kk, то пишем LSO.data.kk = kk; но т.к. для сохранения в LSO использую отдельный метод (вынесены различные проверки, в примере -- метод saveLSO), то приходится писать так saveLSO("dd", dd); saveLSO("kk", kk); красивше было бы так saveLSO(dd.name, dd); saveLSO(kk.name, kk); (если в дальнейшем придется изменить название переменной, а это делаю автоматически во всем коде через рефакторинг в FDT, то я избегаю проблемы, когда текстовое значение имени переменной не будет изменено и придется ручками копаться, а это уже лишние пальце-движения и возможные проблемы )Пример в целом, где хотелось бы иметь возможность определять собственное имя переменной: var dd : uint; var kk : String; ... ... saveLSO(dd.name, dd); saveLSO(kk.name, kk); ... ... // метод сохраняющий данные в Local Shared Objects function saveLSO($varName : String, $varValue : Object){ // разные проверки // еще проверки :) // непосредственно сохранение LSO.data[$varName] = $varValue; } ![]() |
|
|||||
|
Modus ponens
|
* Погарячился, имена параметров не хранятся. Так что в конкретном случае - никак. Их просто не существует в скомпилированой SWF. Или как-то так. А вообще не понятно почему вы записываете переменные - создайте объект со свойствами и его и записывайте - всякие проблемы с рефакторингом и т.п. просто не возникнут. ЗЫ. Не используйте $ где не нужно, он совсем для других целей.
__________________
Hell is the possibility of sanity Последний раз редактировалось wvxvw; 13.08.2009 в 11:29. |
|
|||||
|
Регистрация: Aug 2009
Адрес: Earth
Сообщений: 41
|
4: wvxvw
>>создайте объект со свойствами и его и записывайте как вариант, сенкс |
![]() |
![]() |
Часовой пояс GMT +4, время: 15:02. |
|
|
« Предыдущая тема | Следующая тема » |
|
|