Показать сообщение отдельно
  #16 (permalink)  
Старый 02.09.2011, 04:04
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от kadabrik
хотя может она просто кеширование какоенить врубает...
Не знаю как насчет кеширования, но я попробовал такой вариант:
function test(){
  for(var q in ['a','b','c','d','e','f','g','h','i','j'] )
    document.getElementById(q);
}
test();
и
function test(){
  for(var q in ['a','b','c','d','e','f','g','h','i','j'] )
    document.querySelectorAll('[id="'+q+'"]');
}
test();
и вот результаты:
Opera:
getElementById - 189 692 выполнений/1000 мс
querySelectorAll - 120 429 выполнений/1000 мс

Chrome:
getElementById - 420 454 выполнений/1000 мс
querySelectorAll - 12 735 выполнений/1000 мс

в других не пробовал так как нет смысла... Итог в опере результаты почти идентичны, скорость падает в основном из-за склеивания строки. Но в целом она работает и с тем и с тем методом с одинаковой скоростью.
Ответить с цитированием