Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Ахрененый глюк! (http://www.flasher.ru/forum/showthread.php?t=150753)

iliacmd 17.02.2011 15:52

Ахрененый глюк!
 
Меня просто переполняют эмоции!!

Может мне кто объяснит вчём фокус!!!

Примерно вот такой код

var arr:Array = new Array;
trace(user.id); // Самая значимая и интересная строчка, если её убрать то в последствии из массива нельзя извлечь значение свойства arr['id'+user.id]
arr['id'+user.id] = user;

В общем если есть трейс ид, то элемент можно извлечь из массива. Как можно решить проблему не используя трейс?

i.o. 17.02.2011 16:00

приведите код для user.id.
Что это: свойство или поле класса?

TexHuK 17.02.2011 16:00

arr['id'+user.id] = user; а это как понять?
я думал что элементы в массиве задаются числами..

gloomyBrain 17.02.2011 16:03

Array - это динамический класс, поэтому можно создавать свойства "на лету", что и происходит в конструкциях вида arr["propName" + 123] = 321

ChuwY 17.02.2011 16:04

Цитата:

Сообщение от TexHuK (Сообщение 974005)
arr['id'+user.id] = user; а это как понять?
я думал что элементы в массиве задаются числами..

Зависит от вида массива.
Класс Vector -- может быть только лишь индексированным массивом (ключи -- числа)
А класс Array - может быть как индексированным, так и ассоциативным. То есть иметь в роли ключей любые другие объекты.
Хотя, если нужна такая функциональность, то я пользуюсь Dictionary.

TexHuK 17.02.2011 16:05

ChuwY, спасибо, буду знать :)

i.o. 17.02.2011 16:07

Цитата:

Хотя, если нужна такая функциональность, то я пользуюсь Dictionary.
Обычного Object для таких целей вполне хавтает )

ChuwY 17.02.2011 16:08

Ну, gloomyBrain вернее сказал.

iliacmd 17.02.2011 16:33

самое фантастическое, что класс для user - это класс VO только со свойствами public.

Я использую pureMVC, обращаюсь к user через userProxy.user.id в UserProxy user публичное свойство содержащее объект класса User.

iNils 17.02.2011 16:55

1. Название темы не раскрывает сути вопроса.
2. Код не оформлен тегами для кода.


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

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