![]() |
|
||||||||||
|
|||||
|
Народ, есть такой вопрос: если массив задан через <имя массива>[<имя элемента>], например a["name"], и так далее все элементы прописаны, то есть ли варианты, кроме как задания напрямую имени того или иного элемента, обратиться к его значению.
Проще - a["name"]="One"; trace(a["name"]) По-другому узнать значение элемента "name" можно? Через его индекс не получается..... Причем если массив задан таким образом, то при чтении свойства length возвращается 0, как это ни странно. Почему?
__________________
За двумя зайцами погонишься - от егеря по морде получишь |
|
|||||
|
Регистрация: Jan 2002
Адрес: СПб-Denver-Лермонтов
Сообщений: 1,525
|
Если a["name"] - это массив, то я бульдозер. Посмотри в хэлпе про массивы.
__________________
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный. (S.Wizard) |
|
|||||
|
[++]
|
Во флэше нету ассоциативных массивов, а a["name"] соотвествует a.name
|
|
|||||
|
Ага, понятно
Просто у меня в голове клин был, что если какая строка с квадратными скобками, то сразу массив Где-то увидел подобные строки, вот и подумал, что это массив, и что можно ему элементы именовать прям строками Спасибо, не буду больше заблуждаться и искать невозможного ![]()
__________________
За двумя зайцами погонишься - от егеря по морде получишь |
|
|||||
|
Регистрация: Jan 2002
Адрес: СПб-Denver-Лермонтов
Сообщений: 1,525
|
Ну, почему же...? Вот это, например, - массив, его можно задавать так:
a = ["name","nick","age","gender","height","weight"]; Можно так: a = new Array("name","nick","age","gender","height","weight"); Можно так: a = new Array(); a[0]= "name"; a[1]= "nick"; a[2]= "age"; a[3]= "gender"; a[4]= "height"; a[5]= "weight"; А затем: for(i=0;i<a.length;i++){ trace(a[i]); }
__________________
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный. (S.Wizard) |
|
|||||
|
стервочка (я мужик)
|
Да! Но его нельзя задать так:
Почувствуй разницу.
|
|
|||||
|
стервочка (я мужик)
|
2 silin
Цитата:
|
|
|||||
|
я и говорю, что привел неудачный пример, потому как строки "0", "1", "2" ... "n" флэш преобразует в нумберы
и такой код a = new Array(); a["0"] = "name"; a["1"] = "nick"; trace(a); работает (посмотри) |
|
|||||
|
стервочка (я мужик)
|
Признаю.
|
![]() |
Часовой пояс GMT +4, время: 21:05. |
|
|
« Предыдущая тема | Следующая тема » |
|
|