Перечисление For Each In для пользовательских классов набора данных - PullRequest
1 голос
/ 10 октября 2011

У меня довольно стандартная реализация круглого, двустороннего связанного списка.Для массивов я обычно использую for each in, чтобы проходить через каждый элемент, не беспокоясь.

Проблема в моем пользовательском связанном списке, который нельзя просмотреть простым вызовом.Я предполагаю, что если в AS3 есть класс Proxy, то есть большая вероятность, что команда Adobe предложила реализовать идею, я не знаю ... Перечисляемый класс или что-то еще?Тем не менее мой поиск оказался нулевым.

Есть ли способ заставить For Each In работать с пользовательским классом во Flash?Не пройти через все свойства объекта , а пройти через весь набор данных, представленный этим классом .

Ответы [ 3 ]

2 голосов
/ 10 октября 2011

Вы можете прочитать этот пост о Прокси класс в моем блоге. Вы можете найти примеры реализации "для каждой" логики.

1 голос
/ 10 октября 2011

Вы должны реализовать пользовательские hasNext() и next() методы и просто перебрать список объектов

1 голос
/ 10 октября 2011

Да, вы правы, проверьте Proxy класс .

В частности, методы nextName, nextNameIndex и nextValue будут интересны.

Пока у вас есть легкий доступ к элементам вашего списка по индексу, вы сможете реализовать цикл for ... in.

...