![]() |
Обновить один XML по другому
Подозреваю, задачка пустяковая, но нет времени глубоко зарываться в документацию.
Есть два объекта XML (profile и update): Код:
<profile>- все узлы в profile, присутствующие в update, обновились значениями из update - все узлы в profile, отсутствующие в update, остались в прежнем виде Т.е., итогом операции является объект XML вида Код:
<profile>Как проще сделать? |
если это с сервака прилетает (хотя думаю тут других вариантов и нет), тогда проще сразу с сервака засылать второе один раз чем два раза первое
|
Объект profile живет в клиенте и там порядка трех десятков параметров.
С сервера прилетает update и в нем как правило по три-пять параметров, которые требуют обновления, а остальные не трогаются. Как раз хочу уйти от перекидывания лишних параметров. |
Цитата:
|
Так вопрос в методе и заключался. ))
Вот такое решение получилось Код AS3:
|
Условный оператор, который сравнивает имена xml-объектов тут явно лишний, т.к. возвращаемые объекты имён у них в любом случае будут разные, значит это условие никогда не выполнится, как следствие данные никогда не обновятся
Добавлено через 4 минуты хотя нет, извините, всё правильно, я просто не обратил внимание на переменные, которые вы объявляете внутри цикла Добавлено через 15 минут Незнаю насколько это будет проще, но по некторым источникам цикл while в обратном порядке выполняется немного быстрее чем for прямом порядке, и ещё один момент: будет эффективнее если длину массива запросить единожды чем кажды раз. Хотя мне думается что это такие незначительные нюансы, которые не особо важны. Например так: Код AS3:
|
Да, но это все равно перебором.
|
Цитата:
|
Зачем перебирать свойства profile? Если имена нод уникальны:
Код AS3:
|
да, действительно работает
|
| Часовой пояс GMT +4, время: 01:28. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.