Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 07.09.2011, 19:15
Аспирант
Отправить личное сообщение для Hag1989 Посмотреть профиль Найти все сообщения от Hag1989
 
Регистрация: 25.10.2009
Сообщений: 50

Цитата:
Сравнение:
http://jsperf.com/caching-array-length/12
Спасибо ваый и Snipe ! В моем случае цикл c инкрементом (Counting down) оказался самым производительным; но при открытии из CHM он оказался быстрее чем с итерацией только на 25% , а на jsperf.com производительность движка IE6 была выше чем Without caching почти в 4 раза (проверял в IEtester), несмотря на то, что во время работы скрипта Counting down браузер 5 раз ругался алертом "A script on this page is causing Internet Explorer to run slowly"
Ответить с цитированием
  #12 (permalink)  
Старый 07.09.2011, 19:17
Аспирант
Отправить личное сообщение для Hag1989 Посмотреть профиль Найти все сообщения от Hag1989
 
Регистрация: 25.10.2009
Сообщений: 50

Цитата:
А обязательно использовать XML ???
Может получится хранить инфу в json ????
К сожалению работа привязана к XML, кот импортируется из EXCEL.
Ответить с цитированием
  #13 (permalink)  
Старый 07.09.2011, 19:23
Аватар для Snipe
Профессор
Отправить личное сообщение для Snipe Посмотреть профиль Найти все сообщения от Snipe
 
Регистрация: 06.05.2008
Сообщений: 765

Можно в промежутке XSL трансформацию сделать в JSON )
Ответить с цитированием
  #14 (permalink)  
Старый 07.09.2011, 19:26
Аспирант
Отправить личное сообщение для Hag1989 Посмотреть профиль Найти все сообщения от Hag1989
 
Регистрация: 25.10.2009
Сообщений: 50

Конечно, если бы написать VBA надстройку к EXCEL, которая импортировала бы готовый файл в формате json ... Но программист, написавший форму для заполнения БД под excel, пока, отказался это делать. Если я смогу четко описать структуру БД в json, то может он и возьмется за работу.
Ответить с цитированием
  #15 (permalink)  
Старый 07.09.2011, 19:27
Аватар для Snipe
Профессор
Отправить личное сообщение для Snipe Посмотреть профиль Найти все сообщения от Snipe
 
Регистрация: 06.05.2008
Сообщений: 765

Есть еще вариант, запускать преобразования пачками с таймаутами. Тогда браузер не замрет на 5 секунд, но и время разбора будет большим, ну и данные будут доступны не сразу, а постепенно...
Ответить с цитированием
  #16 (permalink)  
Старый 07.09.2011, 19:27
Аспирант
Отправить личное сообщение для Hag1989 Посмотреть профиль Найти все сообщения от Hag1989
 
Регистрация: 25.10.2009
Сообщений: 50

Цитата:
Можно в промежутке XSL трансформацию сделать в JSON )
К сожалению, я, пока, не сумею такое изобразить.
Ответить с цитированием
  #17 (permalink)  
Старый 07.09.2011, 20:20
Профессор
Отправить личное сообщение для popov654 Посмотреть профиль Найти все сообщения от popov654
 
Регистрация: 22.09.2010
Сообщений: 217

Сообщение от ваый Посмотреть сообщение
Сравнение:
http://jsperf.com/caching-array-length/12
Ппц))
На что я обратил для себя внимание:
  1. Opera при всей её замечательности плохо справляется со случаем переменной "снаружи" (бордовая полоска) - результат почти вдвое медленнее наилучшего
  2. Забавно, но без кэширования FF5 работал быстрее FF6
  3. Chrome ну просто ппц какой быстрый! А как это так?..

У меня в Opera 11 результаты подтвердили статистику:
for in
252
±1.10%
99% slower

for check index
2,664
±0.25%
89% slower

using cached length outside test
13,012
±0.29%
44% slower

- самые медленные способы организации цикла в Opera 11
Ответить с цитированием
  #18 (permalink)  
Старый 07.09.2011, 20:53
Аспирант
Отправить личное сообщение для Hag1989 Посмотреть профиль Найти все сообщения от Hag1989
 
Регистрация: 25.10.2009
Сообщений: 50

Сравнение производительности циклов в разных браузерах это конечно хорошо, но как лучше переписать функции в моём примере для производительной работы в IE6. Проверял убирая функцию вывода списка, выяснил, что тормоза, в первую очередь не в data.length, а в arr[i][j] = xmlCols[j].firstChild.data. Исправьте меня если не прав.
Ответить с цитированием
  #19 (permalink)  
Старый 07.09.2011, 21:17
Аспирант
Отправить личное сообщение для Hag1989 Посмотреть профиль Найти все сообщения от Hag1989
 
Регистрация: 25.10.2009
Сообщений: 50

Сообщение от Snipe Посмотреть сообщение
Есть еще вариант, запускать преобразования пачками с таймаутами. Тогда браузер не замрет на 5 секунд, но и время разбора будет большим, ну и данные будут доступны не сразу, а постепенно...
А если запускать не с таймаутами, а по событиям, например при onclick на сылку1 будет парситься и выводиться на экран только часть массива? буду крайне благодарен если пришлете пример подобной реализации.
Ответить с цитированием
  #20 (permalink)  
Старый 08.09.2011, 00:08
Аватар для Snipe
Профессор
Отправить личное сообщение для Snipe Посмотреть профиль Найти все сообщения от Snipe
 
Регистрация: 06.05.2008
Сообщений: 765

Сообщение от Hag1989 Посмотреть сообщение
А если запускать не с таймаутами, а по событиям, например при onclick на сылку1 будет парситься и выводиться на экран только часть массива? буду крайне благодарен если пришлете пример подобной реализации.
Эм, так а список ссылок как будут строится?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача xml файла в js не через HTTP. prowoke Общие вопросы Javascript 9 30.06.2011 02:36
Сохранение файла XML zeraid Общие вопросы Javascript 2 12.05.2011 02:08
не работает парсинг XML в IE Enxiro jQuery 6 25.08.2010 12:26
Размер загруженного XML файла Mefisto AJAX и COMET 3 15.03.2010 00:05
Как узнать какие ошибки произошли при парсинге xml файла faunder Events/DOM/Window 0 12.09.2008 14:17