![]() |
|
||||||||||
|
|||||
|
Регистрация: Feb 2012
Сообщений: 63
|
Спасибо! Возможно, не по теме, но сразу же возникает другой (крайне важный) вопрос (в реализуемой задаче): как преобразовать строку "имя_класса" в имя_класса таким образом, чтобы AS воспринял имя_класса именно как имя класса, а не как строку?
Тобишь, в чём суть.. Приходит строка (через JSON), которая совпадает с названием класса (заранее заготовленным во Flash). Нужно создать экземпляр этого класса, используя в качестве названия класса не строку, а то, что в этой строке содержится. Так я создаю ex при задании имени класса вручную. Как создать ex, если имя класса должно быть получено из строки (например, такой: var s = "Имя_класса")? |
|
|||||
|
Регистрация: Feb 2012
Сообщений: 63
|
Спасибо! С классом всё прокатило на "Ура!". Правда, пришлось использовать следующую конструкцию:
А как по такому же принципу динамически создать массив (с именем, которое приходит в качестве строки)? Т.е. приходит, к примеру, строка "Имя_массива_1" и программно нужно создать массив с таким же именем. |
|
|||||
|
Принципиально возможны следующие варианты:
1. Создать массив заранее и затем обратиться к нему, используя полученное строковое имя, через следующий синтаксис: или (если обращение к массиву из вне класса) и дальше ваши манипуляции с ним. 2. Объявить класс, в котором вы намерены создавать массив, динамическим - dynamic, тогда действительно возможно создание массива в ходе выполнения программы. Как то так:
при создании своей программы. ) Подумайте - что нужно сделать, чтобы вам такие способы не нужны были. * Использование динамических классов крайне не желательно. Это затруднит отладку и замедлит выполнение программы, т.к. программа не располагает перечнем полей класса на момент обращения к нему. |
|
|||||
|
Регистрация: Feb 2012
Сообщений: 63
|
Всем большое спасибо за дельные советы!
Сам уже не раз об этом думал.. |
|
|||||
|
Ну тогда бы Object.
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ" Мои ачивки: художник-паразит. |
![]() |
![]() |
Часовой пояс GMT +4, время: 15:15. |
|
|
« Предыдущая тема | Следующая тема » |
|
|