Справочник методов console в JS

Со времён систематизации методов объекта console прошло достаточно много времени, некоторые браузеры получили поддержку недостающих ранее методов. Таблица вызывает естественный интерес у разрабочиков, поэтому — почему бы её не обновить, дополнив в одной статье описаниями?

3d7e4d9bc2073de27509d28332e3514b.png Chrome 1c4f1f80e15f1c7e80bac85502d49c05.png Firebug 2f99c7b644597b049351bd3cb42c5b4e.png Firefox 2fc64f49ce69a57d73b25cb9810d79c9.png IE ca9330c3aafda6e333e55e04a7de2569.png Node.js 844dec8fcccb2ecb8c3357e7f76865bd.png Safari 404e0d99db9f10d769c503b046c87b02.pngOpera assert (expression[, object, …]) Если выражение expression ложно, выводит console.error, иначе — ничего не выводит.

  ✓   ✓ ✓ (28.0+)   ✓   ✓   ✓   ± clear () Очищает окно консоли.

  ✓   ✓ -⊝-   ✓ -⊝-   ✓   ✓ count ([object]) Выводит, сколько раз данный код был выполнен. Если необязательный аргумент object передан, то перед значением счётчика, выводится object.toString ()**.

  ✓   ✓ ✓ (30.0+)   ✓ -⊝-   ✓ ± … debug (object[, object, …]) Эквивалент console.log для совместимости со старым вариантом объекта console, когда .debug выводил дополнительно ссылку на строку кода, из которой он был вызван.

   равно .log ()   ✓   ✓   ✓   ✓ -⊝-   ✓ ± … dir (object) object выводится как Javascript-объект (для DOM-элементов — все их аттрибуты и методы). Похожим образом работает %O в console.log в Chrome.

  ✓   ✓ ✓ (8+) ✓ (9+)   ✓   ✓   ✓ dirxml (object) Выводится XML-код объекта.

  ✓   ✓ -⊝- ✓ (11+) -⊝-   ✓ ± … error (object[, object, …]) Выводит ошибку и результат console.trace для места, откуда она была вызвана (не останавливая выполнение программы). Поддерживаются паттерны (%s, %d (%i), %f, %o, %O, %c), как в console.log.

  ✓ ± … ± … ✓ (8+)   ✓   ✓ ± … exception (object[, object, …]) Эквивалент error ()

  равно .error () -⊝- -⊝- ✓ (28+) -⊝-        -⊝- -⊝- -⊝- group (object[, object, …]) Начинает развёрнутую группу записей в консоли, которая вручную затем может сворачиваться. Группа оканчивается командой .groupEnd (). Поддерживаются паттерны (см. .log ()).

  ✓   ✓ ± … ✓ (11+) -⊝- ✓ (4+)   ✓ groupCollapsed (object[, object, …]) Начинает изначально свёрнутую группу записей в консоли, которая вручную затем может разворачиваться. Группа оканчивается командой .groupEnd (). Поддерживаются паттерны (см. .log ()).

  ✓   ✓ ± … (9+) ✓ (11+) -⊝-   ✓ (5.1+)   ✓ groupEnd () Обозначает конец группы.

  ✓   ✓ ✓ (9+) ✓ (11+) -⊝-   ✓ (4+)   ✓ 3d7e4d9bc2073de27509d28332e3514b.png Chrome 1c4f1f80e15f1c7e80bac85502d49c05.png Firebug 2f99c7b644597b049351bd3cb42c5b4e.png Firefox 2fc64f49ce69a57d73b25cb9810d79c9.png IE ca9330c3aafda6e333e55e04a7de2569.png Node.js 844dec8fcccb2ecb8c3357e7f76865bd.png Safari 404e0d99db9f10d769c503b046c87b02.pngOpera info (object[, object, …]) Аналогична .log (), но оформляется в ином дизайне, для различения типов сообщений, например, для градации важности или для иного смыслового значения этой группы сообщений. Поддерживаются паттерны (описаны в .log ()).

  ✓   ✓   ✓   ✓   ✓   ✓   ✓ log (object[, object, …]) Выводит аргументы в консоль, разделяя пробелами. Самая популярная из команд console.Поддерживает паттерны — специальные имена в первом аргументе, указывающие, что его надо использовать как шаблон, в который будут подставляться следующие аргументы вместо термов (как в printf () на С, но значительно проще). Примеры:

console.log ('У Пети было %d %s',10,'яблок'); console.log ('Пи равно %f', Math.PI); console.log ('%cКаждый %cОхотник %cЖелает%c знать где сидит фазан','color: red;','font-size:16 px; color: orange;','background: black; color: yellow;','font: normal; color: normal; background: normal;'); console.log ('body as DOM: %o', document.getElementsByTagName ('body')[0]); console.log ('object: %O',{a:1, b:2}); console.log ('body as Object: %O', document.getElementsByTagName ('body')[0]); Виды паттернов и тип данного, в который преобразуется значение подставляемого аргумента:%s — строка.%d или %i — число.%f — число с плавающей точкой (Firebug тоже поддерживает).%o — DOM-элемент (Firebug выводит как ссылку на элемент. Chrome, кроме ссылки, отображает элемент в консоли. Firefox по клику открывает элемент в модальном окне (доступны все аттрибуты и методы этого объекта)).%O — JS-объект (не поддерживается в Firefox; Chrome преобразует DOM-объект в js-объект для этого паттерна; Firebug не отличает %o от %O).%c — CSS-стиль (color, background, font, …; не поддерживается в Firefox).     (важно)   ✓   ✓   ✓   ✓   ✓   ✓ ± … markTimeline () Аналог .timeStamp () для Safari, но в нём .timeStamp () не поддерживается, и наоборот.

 =.timeStamp () -⊝- -⊝- -⊝- -⊝- -⊝-   ✓ -⊝-

  ✓   ✓ (devtools) ✓ (10+) -⊝-   ✓ -⊝- profileEnd () Выключает Javascript-профайлер.

  ✓   ✓ (devtools) ✓ (10+) -⊝-   ✓ -⊝- table (data[, columns]) Двумерные табличные данные — в формате таблицы. Data — массив или объект (или объект из объектов, объект из массивов), каждый элемент которого будет строкой в таблице. Первый столбец двумерного массива будет его индексом (от 0). Или, если это — объект, первый столбец будет состоять из ключей объекта. Пример из Firefox (объект объектов): e00b6b85da16e663e206d18eb9ec5f27.png   ✓   ✓ ✓ (34.0+) -⊝- -⊝- -⊝- -⊝- time (label) Включает счётчик (миллисекунд) под именем label.

  ✓ ✓ ✓ (10+) ✓ (11+)   ✓ ✓ (4+)   ± timeEnd (label) Останавливает счётчик (миллисекунд) под именем label и публикует результат под этим именем. Пример (Хром): time-duration.png   ✓   ✓ ✓ (10+) ✓ (11+)   ✓ ✓ (4+)   ± timeStamp ([label]) Отрисовыввает метки времени на диаграмме таймингов скрипта, что позволяет следить за динамикой поведения программы. Пример (Firebug): 25e58978d986761ce31f442896df9c40.png   ✓   ✓ -⊝- -⊝- -⊝- -⊝- -⊝- trace () Показывает стек трассировки функции на данный момент исполнения (то же, что обычно показывается при остановке на месте ошибки). Пример в Safari (в боковой панели), в Хроме (в консоли): 35d9b265d50da60662ad4af666d8df11.png3c20af87a0a84d05aa7db1a3c9d14098.pngВ Firefox: e610506e4506829cf809cd64bd9902ee.png   ✓   ✓ ✓ (10+) ✓ (11+)   ✓ ✓ (7.0.1+) ± … warn (object[, object, …]) Аналогична .log () и .info (), но оформляется в ином дизайне, для различения типов сообщений. Поддерживаются паттерны (описаны в .log ()).

  ✓   ✓   ✓   ✓   ✓   ✓   ✓ debugger; Останавливает выполнение Javascript на текущей строке. Равносилен установке точки останова (breakpoint) в отладчике. Кроме остановки, никак не отражается на исполняемой программе.

  (оператор)   ✓   ✓   ✓   ✓   ✓   ✓   ✓ throw new Error ('mesasge'); Останавливает выполнение Javascript на текущей строке, прерывая выполнение. (Поддерживается всеми средами исполнения Javascript.)

3d7e4d9bc2073de27509d28332e3514b.pngChrome 1c4f1f80e15f1c7e80bac85502d49c05.pngFirebug 2f99c7b644597b049351bd3cb42c5b4e.pngFirefox 2fc64f49ce69a57d73b25cb9810d79c9.pngIE ca9330c3aafda6e333e55e04a7de2569.pngNode.js 844dec8fcccb2ecb8c3357e7f76865bd.pngSafari 404e0d99db9f10d769c503b046c87b02.pngOpera

© Habrahabr.ru