Библиотека google-closureтакже содержит систему регистрации, которая должна быть знакома большинству. Разработчики. Это приятно. К сожалению, вывод, который вы получаете, менее выразительный, чем при использовании console.log
, доступного в некоторых браузерах/плагинах.
Например, если вы напишете console.log(window)
в Chrome, консоль отобразит объект, который вы можете просмотреть в интерактивном режиме. При использовании регистратора google-close этого не произойдет. Я предполагаю, что внутри он просто передаст строковое представление вашего объекта в console.log
. Таким образом, вы теряете много удобства.
Из-за этого я до сих пор продолжаю использовать console.log
. Но затем, если по несчастью вы забудете удалить его из производственного кода, ваш код сломается в браузерах, в которых нет console.log
(например, IE).
В качестве альтернативы можно защититься от этого, сначала проверив существование, например:
window.console && window.console.log && console.log(...)
или:
if (DEBUG) {
console.log(...)
}
Но оба решения далеки от совершенства. И, учитывая, что в библиотеке естьфреймворк логирования, было бы неплохо иметь возможность его использовать. Сейчас я нахожу console.log
гораздо более полезным.
Итак, мой вопрос (tl/dr): Могу ли я сделать так, чтобы пользовательская консоль закрывала Google.log(x)
, когда я пишу myLogger.info(x)
вместо него, используя строковое представление x
?