Я должен признать это впервые, и я буду использовать эту платформу, чтобы убрать скелеты из моего шкафа разработки. Иногда моя магия - которую некоторые называют «кодированием» - не так совершенна, как может показаться моим коллегам результат, когда им показывают великолепные результаты. Да, я сказал это - иногда я использую старый метод проб и ошибок, который мы все называем отладкой :)
Не судите о платформе SaaS по ее обложке. Наша команда разработчиков глубоко разбирается в последних разработках систем. ›› Посмотреть наши открытые роли
В последнее десятилетие одной из моих страстей является разработка интерфейсов (особенно javascript). Как ремесленник, я люблю изучать новые инструменты ремесла. В этой истории я дам вам несколько отличных советов по отладке, как профессионалу, с использованием старой доброй консоли.
Да, все мы знаем основы:
console.log («Hello World!»); // записываем сообщение или объект в консоль
console.info («Что-то случилось…»); // то же, что и журнал консоли
console.warn («Произошло что-то странное…»); // то же, что и журнал консоли, но выводит предупреждение
console.error («Произошло что-то ужасное…»); // то же, что и консольный журнал, но выводит ошибку
Надеюсь, теперь я могу дать вам несколько советов, о которых вы раньше не знали, и которые сделают вас профессиональным отладчиком.
Совет №1 console.trace ()
Если вы хотите узнать, откуда запрашивается журнал, используйте console.trace (), чтобы получить трассировку стека с зарегистрированными данными.
Совет №2 console.time () && console.timeEnd ()
Если вы пытаетесь найти скрытую проблему с производительностью, начните отсчет времени с помощью console.time () и распечатайте с помощью console.timeEnd () .
Совет № 3 console.memory
Если ваша проблема с производительностью еще сложнее и вы ищете скрытую утечку памяти, вы можете попробовать использовать console.memory (свойство, а не функцию) для проверьте свой статус размера кучи.
Совет № 4 console.profile (‘profileName’) & console.profileEnd (‘profileName’)
Это не стандартно, но широко поддерживается. Вы можете запустить и завершить инструмент производительности браузера - профиль производительности из кода, используя console.profile ('profileName'), а затем console.profileEnd ( 'profileName'). Это поможет вам профилировать ТОЧНО то, что вы хотите, и избавит вас от необходимости щелкать мышью в зависимости от времени.
Совет № 5 console.count («ВЕЩЕСТВА, КОТОРЫЕ СЧИТАЮ»)
В случае повторяющейся функции или кода вы можете использовать console.count (‘?’), чтобы подсчитать, сколько раз ваш код был прочитан.
Совет № 6 console.assert (false, «Войдите в систему!»)
Да, условное ведение журнала без обертывания журналов if-else :)
Вы можете использовать console.assert (condition, msg) для записи чего-либо, когда условие ложь.
* отказ от ответственности - в Node.js это вызовет ошибку утверждения!
Совет № 7 console.group («группа») и console.groupEnd («группа»)
Написав так много журналов, вы можете захотеть их систематизировать. Небольшой и полезный инструмент для этого - console.group () и console.groupEnd (). Используя консольную группу, ваши консольные журналы группируются вместе, а каждая группировка создает другой уровень в иерархии. Вызов groupEnd уменьшает единицу.
Совет № 8 Замена строк
При ведении журнала вы можете включать переменные с помощью строковых подстановок. Эти ссылки должны быть типами (% s = строка,% i = целое число,% o = объект,% f = float).
Совет № 9 console.clear ()
Что ж, после того, как вы написали так много журналов, пришло время немного очистить вашу консоль.
Совет № 10 console.table ()
Оставив лучшее напоследок, это, на мой взгляд, настоящая жемчужина! На самом деле вы можете распечатать очень красивую таблицу с объектами, которые вы регистрируете, используя console.table ()
Я очень надеюсь, что эти советы сделают вашу отладку немного более продуктивной и даже немного интересной!
Если вы любите играть с технологиями, присоединяйтесь к нам!
Вышеизложенное было исследовано и реализовано при создании моего веб-сайта Лучшие рестораны Тель-Авива.
Эту историю перевел на испанский Хавьер Фонт.