PDA

Просмотр полной версии : XML 2 Object


wallride
29.08.2005, 13:17
Народ, есть ли какой-нибудь готовый парсер(конвертер), конвертирующий структуру xml в обычную структуру объектов... Чтобы можно было обращаться не через "firstChild.childNodes.attributes.price", а нормально типа "system.product.component.attributes.price"?

А то времени очень мало, чтоб самому это писать

iNils
29.08.2005, 13:58
Вариант 1: Смотри последнее мое сообщение (http://www.flasher.ru/forum/showthread.php?t=68422)
Вариант 2: Автор BitSky (IV)
// Доступ к XML как к массиву (работает в 2.5 раза медленее чем через childNodes)
//
XMLNode.prototype.__resolve = function (arg) {
if (typeof (Number (arg)) == "number") {
return this.childNodes[arg];
}
};

Пример работы:
XMLNode.prototype.__resolve = function (arg) {
if (typeof (Number (arg)) == "number") {
return this.childNodes[arg];
}
};
r = new XML ("<main id='0' name='a'/><main id='1' name='b'><test id='3' name='test'/><test id='5' name='test2'/></main><main id='2' name='c'/>");

trace(r[1][0])
trace(r[1][1])

Mokus
29.08.2005, 17:36
есть. послать на мыло?

wallride
29.08.2005, 17:54
есть. послать на мыло?

Спасибо огромное! Мыло "wallride (at) yandex.ru"

Iv
29.08.2005, 18:09
второе вычеркните плиз.
это лишь демонстрация возможности.
в реальности лучше не юзать.

если по-хорошему, заюзай org.dembicki.XMLE на www.dembicki.org
хотя если нет времени разбираться, то тоже лучше не трогать :)

iNils
29.08.2005, 18:12
второе вычеркните плиз.
это лишь демонстрация возможности.
в реальности лучше не юзать.
не скажи, при не больщих объемах xml очень полезная и компактная вещь
мне очень нравится.

Iv
29.08.2005, 18:15
ресольвер вызывается в последнюю очередь,
отседава возможно лишнее торможение.

iNils
29.08.2005, 18:16
ресольвер вызывается в последнюю очередь,
отседава возможно лишнее торможение.
за год использования, проблем не возникало

Iv
29.08.2005, 18:17
:) - ну тады убедил :)