Как измерить время выполнения скрипта в jQuery

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

Проверять можем прямо в браузере, на любой странице. Я использую Firebug и Mozilla Firefox, но на самом деле подойдет любой браузер в котором есть инструменты для разработки (обычно вызываются клавишей F12, кроме Operы — в моей версии Ctrl + Shift + I). Заходим во вкладку консоль и пишем следующий код и жмем Выполнить:

Между console.time(‘my time’); и console.timeEnd(‘my time’); помещаем ваш код. Я решил создать переменную myVar, присвоил ей значение 5, умножил ее на 100, перезаписал значение и результат вывел в консоль через console.log(). Кстати говоря, если вы еще используете alert`ы для того, чтобы узнать результат, срочно переучивайте себя на вывод результата в консоле 🙂 .

Не удивляйтесь, если консоль будет показывать разное время — этот метод стоит использовать для больших скриптов и когда вы можете решить задачу 2 разными способами. Для примера, попробуйте выбрать на вашей странице элементы по классу и по id — разница может вас очень удивить. И хотя разработчики jQuery работают над оптимизацией, класс по прежнему остается очень тяжелым селектором, а вот ID наоборот (оно и не удивительно, ведь используется самый обычный JavaScript метод getElementById).

автор: Dmitriy

Занимаюсь веб-разработкой с 2011 года. Посмотреть некоторые из моих работ, а также узнать чуть больше обо мне, вы можете на forwww.com/dmitriy/.

Какие услуги предоставляю:
- Создание сайтов, шаблонов и компонентов на 1С-Битрикс;
- Разработка функционала с нуля и доработка кода на уже созданных проектах;
- Адаптивная вёрстка макетов и натяжка на Битрикс;
- Парсинг файлов и выгрузка на сайт (форматы - CSV, XML, XLSX, JSON)
- Интеграции со сторонними сервисами по API;
- Многоязычные версии и многое другое.

Если у вас остались вопросы, свяжитесь со мной любым удобным для вас способом или оставьте комментарий внизу.
E-mail: dmitriyribka@gmail.com
Skype: cinemacreaterus

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *