Как делают Вас код JavaScript теста производительности?

309
задан Peter Mortensen 10 December 2009 в 10:03
поделиться

9 ответов

Профилировщики являются определенно хорошим способом получить числа, но по моему опыту, воспринятая производительность - все, что имеет значение для пользователя/клиента. Например, у нас был проект с аккордеоном Расширения, который расширился для показа некоторых данных и затем нескольких вложенных сеток Расширения. Все на самом деле представляло довольно быстро, никакая единственная операция не заняла много времени, была только большая информация, представляемая внезапно, таким образом, это чувствовало себя медленным пользователю.

Мы 'зафиксировали' это, не путем переключения на более быстрый компонент или оптимизации некоторого метода, но путем рендеринга данных сначала, затем рендеринга сеток с setTimeout. Так, информация казалась первой, тогда сетки появятся в место секунду спустя. В целом, потребовалось немного больше времени обработки, чтобы сделать это тот путь, но пользователю, воспринятая производительность была улучшена.

<час>

В эти дни, профилировщик Chrome и другие инструменты универсально доступны и просты в использовании, как console.time() , console.profile() , и performance.now() . Chrome также высказывает Вам мнение временной шкалы, которое может показать Вам, что уничтожает Вашу частоту кадров, где пользователь мог бы ожидать, и т.д.

, документация Открытия для всех этих инструментов действительно легка, Вам не нужно ТАК ответ для этого. 7 лет спустя я все еще повторю совет своего исходного ответа и укажу, что у Вас может быть медленный код, выполненный навсегда, где пользователь не заметит его, и довольно быстро кодирует выполнение, где они делают, и они будут жаловаться на довольно быстрый код, не являющийся достаточно быстрым. Или что Ваш запрос к Вашему API сервера взял 220 мс. Или что-то еще как этот. Точка остается, если Вы вынимаете профилировщика и идете, ища работу, чтобы сделать, нахождением его но это не может быть работа, в которой нуждаются пользователи.

308
ответ дан Robert Harvey 23 November 2019 в 01:14
поделиться

Золотое правило состоит в том, чтобы Ни при каких обстоятельствах заблокировать Ваш пользовательский браузер. После этого я обычно смотрю на время выполнения, сопровождаемое использованием памяти (если Вы не делаете что-то сумасшедшее, в этом случае это мог быть более высокий приоритет).

0
ответ дан William Keller 23 November 2019 в 01:14
поделиться

Я нахожу, что время выполнения лучшая мера.

3
ответ дан pdavis 23 November 2019 в 01:14
поделиться

Я думаю, что производительность JavaScript (время), тестируя достаточно. Я нашел очень удобную статью [приблизительно 110] тестирование производительности JavaScript здесь .

9
ответ дан Peter Mortensen 23 November 2019 в 01:14
поделиться

Некоторые люди предлагают определенные плагины и/или браузеры. Я был бы, не потому что они [только 110] действительно полезны для той одной платформы; тестовый прогон на Firefox не переведет точно в IE7. Рассмотрение 99,999999% сайтов имеет больше чем один браузер, посещает их, необходимо проверить производительность на всех популярных платформах.

Мое предложение должно было бы сохранить это в JS. Создайте страницу сравнительного тестирования со всем своим тестом JS на и время выполнением. У Вас мог даже быть он сообщение AJAX результаты назад Вам для хранения его полностью автоматизированным.

Тогда просто промывка и повторение по различным платформам.

16
ответ дан Oli 23 November 2019 в 01:14
поделиться

Вы могли использовать это: http://getfirebug.com/js.html . Это имеет профилировщика для JavaScript.

7
ответ дан Peter Mortensen 23 November 2019 в 01:14
поделиться

Я смотрел что-то подобное, но нашел это.

https://jsbench.me /

Это разрешает сторону сравнению стороны, и можно затем также совместно использовать результаты.

0
ответ дан 23 November 2019 в 01:14
поделиться

Обычно я просто проверяю производительность javascript, как долго работает скрипт. jQuery Lover дал хорошую ссылку на статью для тестирования производительности кода javascript , но в статье показано только, как проверить, как долго выполняется ваш код javascript. Я также рекомендовал бы прочитать статью под названием «5 советов по улучшения кода jQuery при работе с огромными наборами данных».

1
ответ дан 23 November 2019 в 01:14
поделиться

Мы всегда можем измерить время, затраченное любой функцией, с помощью простого объекта даты .

var start = +new Date();  // log start timestamp
function1();
var end =  +new Date();  // log end timestamp
var diff = end - start;
91
ответ дан 23 November 2019 в 01:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: