PDA

Просмотр полной версии : Максимальное значение переменной в XML - как получить ?


rukez
03.03.2009, 18:07
опять-же вернёмся к нашим XMLкам :rolleyes:
Определившись в соседней теме с необходимостью (точнее желательностью) ввода id в структуру самого xml столкнулся с глуповатой проблемой - как получить максимальное значение переменной, необходимое для создание следующего значение индексного поля ?

xml вот такого вида:
<a id=1>
..<a id=7>
....<a id=4/>
....<a id=5/>
..</a>
..<a id=2/>
<a id=3/>

Вариант отсортировать xml и взять первое значение это впринципе вариант, но т.к. xml довольно большой то получается много лишней работы процу что не айс :umnik2:
Как быть ? :eek::o

Bruiser
03.03.2009, 18:41
Как вариант, преобразовать к линейному виду и пробежаться по уже плоскому дереву в поисках максимального элемента.

wvxvw
03.03.2009, 19:35
var xml:XMLList =
XMLList(
<a id="1"/> +
<a id="7">
<a id="4"/>
<a id="5"/>
</a> +
<a id="2"/> +
<a id="3"/>);
var array:Array = [];
xml.(array.push(int(@id.toString())))..*.@id.(array.push(int(toString())));
trace(array);
trace(Math.max.apply(Math, array));

rukez
04.03.2009, 13:27
О! Спасиб, сейчас попробуем привязаться к массиву

Добавлено через 2 часа 58 минут
Вау, спасибо, работает и притом весьма быстро :yahoo::victory: