10 консольных команд для упрощения отладки JavaScript-кода
Редкому разработчику нравится заниматься отладкой. Подборка из десяти функций консоли JavaScript, которые призваны помочь разработчику в этом нелёгком деле.
15К открытий15К показов
Мало кто из программистов любит процесс отладки, так что дабы максимально его упростить, обратим внимание на десять консольных функций, которые призваны помочь в этом неблагодарном деле.
Группировка логов
Как понятно из имени метода, он позволит сгруппировать несколько логов в одно раскрывающееся дерево. Можно даже организовывать вложенные деревья для последующей группировки.
У этого приёма есть три метода: console.group('name') отмечает начало группировки, console.groupEnd('name') отмечает окончание, а console.groupCollapsed() создаёт группу в виде скрытого дерева.
Трассировка стека
В случае, если необходимо найти полный стек вызова функции, очень полезной будет функция console.trace(). Например, так можно отследить, откуда пришёл коллбек:
Счётчик вызовов
Функция console.count() возвращает количество раз, когда её вызывали. Учтите, что если вы измените строку лога, отдаваемую функции, счётчик обнулится и начнёт отсчёт для новой строки. Также есть функция сброса счётчика console.countReset().
Таймер в консоли
Команды console.time() и console.timeEnd() позволяют соответственно начать и остановить отсчёт времени. В основном это нужно для проверки производительности. Также можно передать функциям строку для создания специфического таймера.
Работа с логическими выражениями
Допустим, вам нужно проверить, приняло ли какое-то выражение значение false и записать это в лог. В обычной ситуации можно использовать условный оператор if, но в нашем случае куда лучше подойдёт функция console.assert(). Функция принимает в качестве аргумента выражение, а также сообщение либо объект.
Профилирование
Как часто вам приходило в голову, что стоило приступить к профилированию сразу, вместо оттягивания до последнего и ручного поиска той функции, с которой и стоило начать? console.profile() призвана помочь с этим. После завершения профилирования просто вызовите эту функцию.
Метка времени
Функция console.timeStamp() добавляет событие в таймлайн во время записи. Можно использовать, например, по окончании процесса обработки данных или для того, чтобы поймать момент возвращения вызова API. В качестве аргумента функция принимает название какого-либо события.
Очистка консоли
Простейшая функция console.clear() очищает консоль.
Чтение размера буфера
Свойство console.memory позволяет отображать размер буфера. Полезно, когда статистика производительности не совсем прозрачна и нет времени рассматривать графики.
Пользовательская таблица
Функция console.table(), принимающая в качестве аргумента массив, выводит небольшую удобную таблицу, с которой можно взаимодействовать. Для вызова нужно передать ей массив объектов.
Заключение
Вряд ли процесс отладки когда-либо станет вашим любимым занятием, но с помощью этих приёмов жизнь может стать чуточку проще.
15К открытий15К показов










