Какая польза от console.log
?
Пожалуйста, объясните, как использовать его в JavaScript, на примере кода.
Какая польза от console.log
?
Пожалуйста, объясните, как использовать его в JavaScript, на примере кода.
Это не функция jQuery, а функция для отладки. Вы можете, например, записывать что-то в консоль, когда что-то происходит. Например:
$('#someButton').click(function() {
console.log('#someButton was clicked');
// do something
});
Затем вы увидите #someButton was clicked
на вкладке «Консоль» Firebug (или в консоли другого инструмента, например, Chrome Web Inspector), когда нажмете кнопку.
По некоторым причинам объект консоли может быть недоступен. Затем вы можете проверить, есть ли это - это полезно, поскольку вам не нужно удалять код отладки при развертывании в производственной среде:
if (window.console && window.console.log) {
// console is available
}
if (console.log)
(или даже if (console && console.log)
) все равно будет выдавать ошибку, если консоль недоступна. Вы должны использовать window.console
(поскольку window
гарантированно существует) и проверять только один уровень глубины за раз.
- person Tgr; 11.01.2011
var variable = 12;
console.log("variable value equal to %d", variable)
- person farid bekran; 17.06.2013
Места, которые можно просмотреть на консоли! Просто чтобы все они были в одном ответе.
Firefox
(теперь вы также можете использовать встроенные в Firefox инструменты разработчика Ctrl + Shift + J (Инструменты> Веб-разработчик> Консоль ошибок), но Firebug намного лучше; используйте Firebug)
Safari и Chrome
В основном то же самое.
https://developers.google.com/chrome-developer-tools/docs/overview
https://developer.apple.com/technologies/safari/developer-tools.html
Internet Explorer
Не забывайте, что вы можете использовать режимы совместимости для отладки IE7 и IE8 в IE9 или IE10.
http://msdn.microsoft.com/en-us/library/ie/gg589507(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/dd565628(v=vs.85).aspx
Если вам необходимо получить доступ к консоли в IE6 для IE7, используйте букмарклет Firebug Lite.
http://getfirebug.com/firebuglite/ найдите стабильный букмарклет
http://en.wikipedia.org/wiki/Bookmarklet
Opera
http://www.opera.com/dragonfly/
iOS
Работает со всеми iPhone, iPod touch и iPad.
Теперь с iOS 6 вы можете просматривать консоль через Safari в OS X, если вы подключите свое устройство. Или вы можете сделать это с помощью эмулятора, просто откройте окно браузера Safari и перейдите на вкладку «Разработка». Там вы найдете варианты, позволяющие инспектору Safari взаимодействовать с вашим устройством.
Windows Phone, Android
Оба они не имеют встроенной консоли и возможности букмарклета. Поэтому мы используем http://jsconsole.com/ type: listen, и он предоставит вам тег скрипта для размещения в ваш HTML. С этого момента вы можете просматривать свою консоль на веб-сайте jsconsole.
iOS и Android
Вы также можете использовать http://html.adobe.com/edge/inspect/, чтобы доступ к инструментам веб-инспектора и консоли на любом устройстве с помощью удобного плагина для браузера.
Старые проблемы браузера
Наконец, более старые версии IE будут давать сбой, если вы используете console.log в своем коде и одновременно не открываете инструменты разработчика. К счастью, это легко исправить. Используйте приведенный ниже фрагмент кода в верхней части кода:
if(!window.console){ window.console = {log: function(){} }; }
Это проверяет, присутствует ли консоль, и, если нет, устанавливает ее на объект с пустой функцией, называемой log
. Таким образом, window.console и window.console.log никогда не будут по-настоящему undefined.
window.dump
в сообщении о console.log
?
- person Fresheyeball; 29.05.2014
Вы можете просмотреть любые сообщения, зарегистрированные в консоли, если вы используете такой инструмент, как Firebug, для проверки своего кода. Допустим, вы делаете это:
console.log('Testing console');
Когда вы входите в консоль в Firebug (или в любом другом инструменте, который вы решите использовать для проверки своего кода), вы увидите то сообщение, которое вы указали функции для регистрации. Это особенно полезно, когда вы хотите увидеть, выполняется ли функция или правильно ли передается / назначается переменная. На самом деле это очень полезно для выяснения того, что пошло не так с вашим кодом.
Он отправит сообщение журнала в консоль javascript браузера, например Firebug или Developer Tools (Chrome / Safari) и покажет строку и файл, из которого он был запущен.
Более того, когда вы выводите объект jQuery, он будет включать ссылку на этот элемент в DOM, и щелчок по нему перейдет к нему на вкладке Elements / HTML.
Вы можете использовать различные методы, но имейте в виду, что для того, чтобы он работал в Firefox, у вас должен быть открыт Firebug, иначе вся страница выйдет из строя. Независимо от того, является ли то, что вы регистрируете, является переменной, массивом, объектом или элементом DOM, он предоставит вам полную разбивку, включая прототип для объекта (всегда интересно потрогать). Вы также можете включить сколько угодно аргументов, и они будут заменены пробелами.
console.log( myvar, "Logged!");
console.info( myvar, "Logged!");
console.warn( myvar, "Logged!");
console.debug(myvar, "Logged!");
console.error(myvar, "Logged!");
Они отображаются с разными логотипами для каждой команды.
Вы также можете использовать console.profile(profileName);
, чтобы начать профилирование функции, скрипта и т. Д. А затем закончить его с помощью console.profileEnd(profileName);
, и он появится на вкладке «Профили» в Chrome (не знаю, с помощью FF).
Для получения полной справки перейдите на страницу http://getfirebug.com/logging , и я предлагаю вам прочитать ее. (Следы, группы, профилирование, осмотр объекта).
Надеюсь это поможет!
console.log("x:", x)
лучше, чем console.log("x:" + x)
? Является ли он менее подверженным ошибкам, поскольку ,
легче читать, чем +
?
- person Kevin Meredith; 28.12.2013
+
, но я хотел показать, что вы также можете использовать запятые в функциях консоли. Кроме того, это позволяет избежать проблем, если обе переменные являются целыми числами или массивами.
- person Fred; 13.01.2014
console.log("x:", x)
значительно лучше, потому что, когда x
является объектом или массивом (или чем-то еще, кроме строки), он отображается правильно, без преобразования в строку.
- person Josef Kufner; 18.09.2014
Здесь нет ничего общего с jQuery, и если вы хотите его использовать, я советую вам сделать
if (window.console) {
console.log("your message")
}
Таким образом, вы не нарушите свой код, когда он недоступен.
Как предлагается в комментарии, вы также можете выполнить это в одном месте, а затем использовать console.log
как обычно
if (!window.console) { window.console = { log: function(){} }; }
if(!window.console){ window.console = function(){}; }
в одном месте, а затем использовать console.log как обычно.
- person Fresheyeball; 13.03.2013
console.log
не имеет ничего общего с jQuery. Это общий объект / метод, предоставляемый отладчиками (включая отладчик Chrome и Firebug), который позволяет сценарию записывать данные (или объекты в большинстве случаев) в консоль JavaScript.
console.log
записывает отладочную информацию в консоль в некоторых браузерах (Firefox с установленным Firebug, Chrome, IE8, все, что с установленным Firebug Lite). В Firefox это очень мощный инструмент, позволяющий проверять объекты или проверять макет или другие свойства элементов HTML. Это не связано с jQuery, но есть две вещи, которые обычно выполняются при использовании его с jQuery:
установите расширение FireQuery для Firebug. Это, помимо других преимуществ, делает ведение журнала объектов jQuery более приятным.
создать оболочку, которая больше соответствует соглашениям о цепочках кода jQuery.
Обычно это означает что-то вроде этого:
$.fn.log = function() {
if (window.console && console.log) {
console.log(this);
}
return this;
}
который вы затем можете вызвать как
$('foo.bar').find(':baz').log().hide();
чтобы легко проверить внутри цепочек jQuery.
console.log
не имеет ничего общего с jQuery.
Он записывает сообщение в консоль отладки, например Firebug.
Иногда вызывает путаницу то, что для регистрации текстового сообщения вместе с содержимым одного из ваших объектов с помощью console.log вы должны передать каждый из двух в качестве другого аргумента. Это означает, что вы должны разделять их запятыми, потому что, если бы вы использовали оператор + для объединения выходных данных, это неявно вызвало бы метод .toString()
вашего объекта. В большинстве случаев это явно не отменяется, и реализация по умолчанию, унаследованная Object
, не предоставляет никакой полезной информации.
Пример для использования в консоли:
>>> var myObj = {foo: 'bar'}
undefined
>>> console.log('myObj is: ', myObj);
myObj is: Object { foo= "bar"}
тогда как если бы вы попытались объединить информативное текстовое сообщение вместе с содержимым объекта, вы бы получили:
>>> console.log('myObj is: ' + myObj);
myObj is: [object Object]
Так что имейте в виду, что console.log фактически принимает столько аргументов, сколько вам нужно.
Используйте console.log
, чтобы добавить на страницу отладочную информацию.
Многие люди используют alert(hasNinjas)
для этой цели, но с console.log(hasNinjas)
легче работать. При использовании всплывающих окон появляется модальное диалоговое окно, которое блокирует пользовательский интерфейс.
Изменить: я согласен с Baptiste Pernet и Jan Hančič, что было бы неплохо сначала проверить, определен ли window.console
, чтобы ваш код не сломался, если нет доступной консоли.
Пример - предположим, вы хотите узнать, в какой строке кода вы смогли запустить свою программу (до того, как она сломалась!), Просто введите
console.log("You made it to line 26. But then something went very, very wrong.")
Вы используете его для отладки кода JavaScript с помощью Firebug для Firefox или консоли JavaScript в Браузеры WebKit.
var variable;
console.log(variable);
Он отобразит содержимое переменной, даже если это массив или объект.
Он аналогичен print_r($var);
для PHP.
if (!window.console) { window.console = { log : function() {} }; }
. Это позволяет вам забыть удалить случайный оператор отладки.
- person roufamatic; 20.01.2011
Осторожно: если оставить вызовы консоли в производственном коде, ваш сайт не сможет работать в Internet Explorer. Никогда не храните его без упаковки. См .: https://web.archive.org/web/20150908041020/blog.patspam.com/2009/the-curse-of-consolelog
Раньше отладка JS выполнялась с помощью функции alert()
- сейчас это устаревшая практика.
console.log()
- это функция, которая записывает сообщение для входа в консоль отладки, например Webkit или Firebug. В браузере вы ничего не увидите на экране. Он записывает сообщение в консоль отладки. Он доступен только в Firefox с Firebug и в браузерах на основе Webkit (Chrome и Safari). Он не работает во всех выпусках IE < / а>.
Объект консоли является расширением DOM.
console.log()
следует использовать в коде только во время разработки и отладки.
Считается плохой практикой, когда кто-то оставляет console.log()
в файле javascript на рабочем сервере.
Если ваш браузер поддерживает отладку, вы можете использовать метод console.log () для отображения значений JavaScript.
Активируйте отладку в своем браузере с помощью F12 и выберите «Консоль» в меню отладчика.
Консоль на JavaScript. Попробуйте исправить или «отладить» нефункционирующую программу JavaScript и попрактиковаться в использовании команды console.log (). Существуют ярлыки, которые помогут вам получить доступ к консоли JavaScript в зависимости от используемого вами браузера:
Сочетания клавиш в консоли Chrome
Windows: Ctrl + Shift + J
Mac: Cmd + Option + J
Сочетания клавиш в консоли Firefox
Windows: Ctrl + Shift + K
Mac: Cmd + Option + К
Сочетания клавиш в консоли Internet Explorer
F12 клавиша
Сочетания клавиш в консоли Safari
Cmd + Option + C
console.log
- это, в частности, метод, с помощью которого разработчики могут писать код, чтобы незаметно информировать разработчиков о том, что делает код. Его можно использовать, чтобы предупредить вас о проблеме, но он не должен заменять интерактивный отладчик, когда приходит время отлаживать код. Его асинхронный характер означает, что зарегистрированные значения не обязательно представляют значение при вызове метода.
Вкратце: регистрируйте ошибки с помощью console.log
(если доступно), затем исправляйте ошибки с помощью выбранного отладчика: Firebug, инструменты разработчика WebKit (встроены в Safari и Chrome), Инструменты разработчика IE или Visual Studio.
Я действительно чувствую легкость веб-программирования, когда начинаю console.log
отладку.
var i;
Если я хочу проверить значение i
runtime ..
console.log(i);
вы можете проверить текущее значение i
на вкладке консоли firebug. Он специально используется для отладки.
Он используется для регистрации (всего, что вы передаете) в консоль Firebug. Основное использование - отладка вашего кода JavaScript.
Помимо упомянутых выше применений, console.log
также может печатать на терминал в node.js
. Сервер, созданный с помощью express (например), может использовать console.log
для записи в выходной файл регистратора.
Это не имеет отношения к jQuery. console.log()
относится к функции журнала объекта консоли, которая предоставляет методы для записи информации в консоль браузера. Эти методы предназначены только для целей отладки и не должны использоваться для представления информации конечным пользователям.
В java-скриптах нет функций ввода и вывода. Итак, для отладки кода используется метод console.log () - метод логирования. Он будет напечатан в журнале консоли (средства разработки).
Его нет в IE8 и ниже, пока вы не откроете инструмент разработки IE.
Цитата из документов MDN здесь
console
- содержит множество методов, которые можно вызывать для выполнения элементарных задач отладки, обычно ориентированных на регистрацию различных значений в веб-консоли браузера.Безусловно, наиболее часто используемым методом является
console.log
, который используется для регистрации текущего значения, содержащегося внутри определенной переменной.
let myString = 'Hello World';
console.log(myString);
Также помните, что console
является частью глобального объекта window
в веб-браузере. Таким образом, следующее также технически правильно, но не используется в практическом сценарии.
let myString = 'Hello World';
window.console.log(myString);
Я пытаюсь объяснить легко:
Зачем использовать:
Метод console.log () записывает сообщение в консоль и отображает его.
~ очень полезно для тестирования.
~ Используйте их внутри / внутри тегов скрипта.
Как увидеть:
= ›Нажмите F12
Синтаксис:
console.log (сообщение, которое вы хотите отобразить);
~ Принимает параметр и отображает его.
Работа с массивом:
var myArray = ["Ali", "John", "Shahrukh"];
console.log(myArray);
Работа с объектами:
var myObject = { firstname : "Ali", lastname : "Rana" };
console.log(myObject);
Работа с текстом: [метод 1]:
console.log("Hello StackOverflow");
Работа с текстом: [метод 2]
var str = "Hello StackOverflow";
console.log(str);
Работа с числами:
var myvar = '2';
console.log(myvar);
Работа с функцией:
function myfunction() { return (5 * 19); }
console.log(function());
Отображать сообщение с аргументом:
var a = 2;
console.log("The value of a is " + a);
Надеюсь, это может помочь.