В обработчике результата вызова HTTPService я назначил повторяющийся узел коллекции arrayCollection. Внутри этого повторяющегося узла находятся другие узлы, которые иногда повторяются, а иногда нет. Например, здесь узел option повторяется внутри options.
<response>
<options>
<option> <var1> part1 </var1> <var2> part2 </var2> </option>
<option> <var1> part1 </var1> <var2> part2 </var2> </option>
</options>
<options>....
</response>
А иногда и не повторяется, вот так.
<response>
<options>
<option> <var1> part1 </var1> <var2> part2 </var2> </option>
</options>
<options>....
</response>
Я сталкиваюсь с ошибками actionscript в цикле for. Как объяснить оба случая?
Вот мой цикл for, присваивающий объекты объектам-значениям:
protected function xml_resultHandler(event:ResultEvent):void
{
var data:ArrayCollection = xml.lastResult.response.option;
var valueobjects:valueObject;
for each (var characteristic:Object in data)
{
valueobject = new valueobject;
valueobject.var1 = characteristic.option[0].var1;
valueobject.var2 = characteristic.option.var2;
datamodel.addItem(valueobject);
}
}
В этом примере кода назначение var1 не будет работать, если нет нескольких узлов option, а var2 не будет работать, если есть несколько узлов object. Я мог бы разбить его на части и перебирать их по отдельности, но есть ли более красноречивое решение?