Цитата:
Согласитесь, это немного нелогично с точки зрения программиста, который любит однородность в коде.
|
А вот и не соглашусь. Здесь фишка в том, что
1) дочерняя нода является свойством отцовской
2) тип ее значения не предопределен
Это ровно то же самое, как использование Object для хранения набора каких-то свойств. И вот допустим Вы делаете trace(_obj.foo); И если foo это инт, равный 2, то трейс и выдаст 2. А если foo это мувиклип, то... Так понятно?
Соответственно у XML есть методы для определения типа содержимого —
hasComplexContent()
hasSimpleContent()
В качестве подсказки, может пригодится для вашей задачи — чтобы узнать имя ноды, то есть "circle", "line", "shape" в вашем примере, можно использовать такую комбинацию:
_node
.name().localName