ГлавнаяActionScript 3 — «100 советов» › XML и XMLList

XML и XMLList

June 19th, 2006
Работая с XML в ActionScript 3 вы в основном имеете дело с двумя объектами: XML (Top level XML) и XMLList (Top level XMLList). Существенная разница между ними в том, что XML – это один элемент XML-дерева, например узел (который может содержать произвольное количество вложенных узлов), а XMLList массив элементов (1 или более).

Код:
// XML: <foo> <foo /> <foo /> <foo /> </foo>
Код:
// XMLList: <foo /> <foo /> <foo />

В первом примере есть один корневой узел и это будет представлено как XML объект. Во втором примере список узлов, это уже будет XMLList.
В отличие от старого XML объекта из предыдущих версий ActionScript (который теперь XMLDocument), новые XML и XMLList могут представлять из себя не только узлы XML дерева (nodes), но и другие значения, например атрибуты:

Код:
var myXML:XML = <foo> <foo bar="bar1" /> <foo bar="bar2" /> <foo bar="bar3" /> </foo>; trace(myXML.foo.@bar.toXMLString()); /* Output: bar1 bar2 bar3 */ trace(myXML.foo.@bar is XMLList); // true

Заметьте, что атрибуты всегда возвращаются как XMLList, даже если в итоге получается только один атрибут:

Код:
trace(myXML.foo[0].@bar is XMLList); // true

Для того чтобы получить XML объект, нужно из возвращаемого массива взять первый элемент:

Код:
trace(myXML.foo[0].@bar[0] is XML); // true

Аналогичная ситуация и с вложенными узлами XML:

Код:
var myXML:XML = <foo> <foo /> </foo>; trace(myXML.foo is XMLList); // true

Категория: ActionScript 3 — «100 советов» Ярлыки: , , ,

Смотрите также

instance name мувиклипа на сцене Константы
  1. February 11th, 2011 at 01:31 | #1

    Блин спасибо чувак!!! Как раз сижу за флексом и парюсь с этим xml, хоть ты нормально объяснил еще раз СПАСИБО!!!

  1. Пока нету.