Отладка JavaScript и объект console

Раньше я, как и многие Web-программисты, при отладке JavaScript использовал функцию alert для того, чтобы посмотреть значение той или иной переменной. Однако необходимость постоянно нажимать кнопку Ok и невозможность вывести сложный объект без написания дополнительного кода приводили к тому, что отладка шла медленно и вызывала немало раздражения. Стал искать другие решения, и выяснил что в современных броузерах есть вывод данных в отладочную консоль броузера с помощью объекта console.

У данного объекта есть несколько методов. Основной из них — console.log(аргумент1,аргумент2,...) позволяет выводить в консоль простые значения и массивы, при этом в качестве первого аргумента можно использовать строку форматирования (как у функции printf в C-подобных языках). Для сложных объектов полезными могут оказаться методы console.dir(объект) и console.dirxml(объект). Для логического выделения можно использовать методы console.warn и console.error, которые аналогичны console.log, но выведенные с помощью них данные будут считаться не уведомлениями (notices), а предупреждениями и ошибками. Это полезно, когда объем отладочной информации велик, так как во-первых, ошибки и предупреждения будут выделены цветом, а во-вторых, уведомления и предупреждения всегда можно скрыть с помощью фильтров в настройках консоли.

Все это позволило значительно ускорить поиск ошибок при разработке приложений на Javascript: если раньше приходилось вставлять в нужном месте alert и нажимать Ok, после каждого вывода, то теперь, сделав вывод с помощью console.log, достаточно выполнить скрипт как обычно, а потом нажать Ctrl+Shift+J (в Firefox или Chrome) и посмотреть отладочный вывод.