Показать сообщение отдельно
  #4 (permalink)  
Старый 17.10.2012, 21:03
Интересующийся
Отправить личное сообщение для Arconas Посмотреть профиль Найти все сообщения от Arconas
 
Регистрация: 21.05.2010
Сообщений: 11

Сообщение от melky Посмотреть сообщение
оптимизировать циклы вообще нет смысла. пишите так, как хочется.
оптимизировать нужно в первую очередь алгоритм.
На самом деле вопросы носили чисто учебный характер, так как разница в циклах практически не заметна в обычных условиях, но, как Вы правильно подметили, копейка рубль бережет. Опять же из теста видно, что запись с объявлением границы цикла в некоторых браузерах работает быстрее.

А желание проверить скорость работы циклов вылилось, собственно, из задачи по перестановке элементов массива в обратном порядке. Там Я сравнивал метод с переменной, с дополнительным массивом и array.reverse(); Reverse, кстати оказался самым медленным во всех браузерах кроме IE. Оптимизация и производительность носили учебный характер. В настоящем приложении данных немного, чтобы их количество как-то повлияло на скорость.
Сообщение от melky Посмотреть сообщение
краткость != скорость.
Это тоже понятно. Не раз и не два, и даже не три натыкался на статьи по оптимизации скриптов и там почти всегда присутствовал совет убрать из цикла якобы не нужные условия. Любопытство снова взяло верх и Я решил попробовать сравнить. Результаты оказались не такими как Я ожидал и написал в личку Илье с вопросом почему так и где Я ошибся. Илья посоветовал перенести обсуждение на форум

Сообщение от melky Посмотреть сообщение
мерять лучше на jsperf.com ...
Чем он лучше, если там тот же самый код?

Цитата:
что нет смысла писать их как-то извращённо - предсказать, в каком конкретном случае скорость возрастёт, нереально)
Согласен. Так же нет смысла доверять советам из статей по оптимизации касательно циклов и длины имени переменной =) Но когда нечем заняться, а программировать хочется - пишу тесты из любопытства. Знаю, что глупо.

В общем... особенности движков. Никакой мистики.
Всем спасибо за ответы, темку можно удалять. Приношу извинения за беспокойство.
Ответить с цитированием