Как я могу напечатать сообщение на консоль ошибок, желательно с переменной?
Например, что-то вроде:
print('x=%d', x);
javascript
debugging
Марк Харрисон
источник
источник
Ответы:
Установите Firebug, а затем вы можете использовать
console.log(...)
иconsole.debug(...)
, и т. Д. (См. Документацию для более).источник
console.log()
etc должна работать во всех браузерах, включая IE. Тем не менее, во всех случаях вам необходимо открыть окно отладчика, в противном случае обращения кconsole
вызовут ошибки.Вы также можете добавить CSS в свои сообщения регистрации:
источник
console.log
вы можете использовать css внутри консоли: |Исключения регистрируются в консоли JavaScript. Вы можете использовать это, если хотите отключить Firebug .
Применение:
источник
throw
должно быть завернуто вsetTimeout
?Хороший способ сделать это, работающий в кросс-браузерном режиме, описан в разделе «Отладка JavaScript»: выбрасывайте оповещения! ,
источник
throw()
это определенно не способ сделать это. вы рано или поздно попадете в беду. для меня это было раньше :(Вот решение буквального вопроса о том, как напечатать сообщение в консоли ошибок браузера, а не в консоли отладчика. (Могут быть веские причины, чтобы обойти отладчик.)
Как я заметил в комментариях о предложении выдать ошибку, чтобы получить сообщение в консоли ошибок, одна проблема состоит в том, что это прервет поток выполнения. Если вы не хотите прерывать поток, вы можете выбросить ошибку в отдельный поток, созданный с помощью setTimeout. Отсюда мое решение (которое, как оказалось, было разработано Иво Данихелкой):
Я включаю время в миллисекундах с момента начала, потому что время ожидания может искажать порядок, в котором вы можете ожидать увидеть сообщения.
Второй аргумент метода Error относится к имени файла, которое здесь является пустой строкой для предотвращения вывода бесполезного имени файла и номера строки. Можно получить функцию вызывающего абонента, но не простым браузерным способом.
Было бы хорошо, если бы мы могли отобразить сообщение со значком предупреждения или сообщения вместо значка ошибки, но я не могу найти способ сделать это.
Другая проблема с использованием броска состоит в том, что он может быть пойман и выброшен с помощью включающей попытки, и помещение броска в отдельный поток также позволяет избежать этого препятствия. Тем не менее, есть еще один способ, которым ошибка может быть перехвачена, а именно, если обработчик window.onerror заменен на другой, который делает что-то другое. Не могу помочь тебе там.
источник
Если вы используете Safari , вы можете написать
и он появляется прямо на консоли браузера.
источник
console.log()
.console.log()
. Это было не так до недавнего времени.Чтобы на самом деле ответить на вопрос:
Вместо ошибки вы также можете использовать информацию, войти или предупредить.
источник
console.error(..)
что это нестандартная функция, и ее не следует использовать в производстве. Что вы думаете об этом? Есть ли у вас какие-либо предложения для начинающих программистов, использующихconsole.error
vsconsole.log
?console.log(...)
«нестандартным». В связи с этим,console.error
так же стабильно, какconsole.log
.Если вы используете Firebug и вам нужна поддержка IE, Safari или Opera, Firebug Lite добавляет поддержку console.log () в эти браузеры.
источник
WebKit Web Inspector также поддерживает Firebug в консоли API (только незначительное дополнение к ответу Дэ ).
источник
Замечание о throw (), упомянутое выше. Кажется, что он полностью останавливает выполнение страницы (я проверил в IE8), поэтому он не очень полезен для регистрации «текущих процессов» (например, для отслеживания определенной переменной ...)
Возможно, я предлагаю добавить элемент textarea где-нибудь в вашем документе и изменить (или добавить) его значение (которое изменило бы его текст) для регистрации информации при необходимости ...
источник
console.log()
,throw()
и т. Д. Кроме того, нет ничего плохого в поведении,throw()
как вы, вероятно, подразумеваете, - тот факт, что он останавливает выполнение, является преднамеренным и задокументированным ( разработчик. mozilla.org/en-US/docs/Web/JavaScript/Reference/… ), и это согласуется с тем, как исключения генерируются / перехватываются в других языках программирования. (Если вы хотите записать содержимое переменной без остановки выполнения, вот для чегоconsole.log()
.)console.log
- поэтому люди давали альтернативы. Оthrow()
прекращении казни, конечно, это намеренно, никто не сказал, что это не так. Вот почему обычно это не очень хороший способ записывать отладочную информацию во время выполнения, чего хотел ОП ...Как всегда, Internet Explorer - большой слон в роликах, который останавливает вас от простого использования
console.log()
.Журнал jQuery может быть легко адаптирован, но добавлять его повсюду очень сложно. Одно из решений, если вы используете jQuery - это поместить его в файл jQuery в конце, сначала свернув:
источник
Посетите https://developer.chrome.com/devtools/docs/console-api для полной справки API консоли.
В этом случае объект будет вашей строкой ошибки
источник
источник
работает для меня .. я ищу это .. я использовал Firefox. вот мой сценарий
работает в Firefox и Chrome.
источник
Самый простой способ сделать это:
источник
Чтобы ответить на ваш вопрос, вы можете использовать функции ES6,
источник
Это не выводит на консоль, но откроет всплывающее окно с вашим сообщением, которое может быть полезно для некоторой отладки:
просто делать:
источник
С синтаксисом es6 вы можете использовать:
источник