Как использовать консоль входа в Internet Explorer?

есть ли консольный регистратор для IE? Я пытаюсь зарегистрировать кучу тестов / утверждений на консоли, но я не могу сделать это в IE.

9 ответов


вы можете получить доступ к консоли сценариев IE8, запустив "инструменты разработчика" (F12). Перейдите на вкладку "скрипт", затем нажмите" консоль " справа.

из кода JavaScript вы можете выполнить любое из следующих действий:

<script type="text/javascript">
    console.log('some msg');
    console.info('information');
    console.warn('some warning');
    console.error('some error');
    console.assert(false, 'YOU FAIL');
</script>

кроме того, вы можете очистить консоль, вызвав console.clear().

Примечание: кажется, вы должны сначала запустить инструменты разработчика, а затем обновить страницу, чтобы это работало.


начиная с версии 8, Internet Explorer имеет свою собственную консоль, как и другие браузеры. Однако, если консоль не включена,console объект не существует и вызов console.log выдаст ошибку.

другой вариант-использовать log4javascript (полное раскрытие: написано мной), который имеет свою собственную консоль ведения журнала, которая работает во всех основных браузерах, включая IE >= 5, а также оболочку для собственной консоли браузера, которая позволяет избежать проблемы неопределенного console.


чрезвычайно важно при использовании консоли.журнал() в производстве:

если вы в конечном итоге выпуская console.log() команды для производства вам нужно поместить в какое - то исправление для IE-потому что console определена только тогда, когда в F12 режим отладки.

if (typeof console == "undefined") {
    this.console = { log: function (msg) { alert(msg); } };
}

[очевидно, удалите предупреждение (msg); заявление, как только вы проверите его работу]

см. также "консоль" является неопределенной ошибкой для Internet Explorer для других решений и многое другое подробности


здесь Firebug Lite что дает много функций Firebug в IE.


простой IE7 и ниже прокладка, которая сохраняет нумерацию строк для других браузеров:

/* console shim*/
(function () {
    var f = function () {};
    if (!window.console) {
        window.console = {
            log:f, info:f, warn:f, debug:f, error:f
        };
    }
}());

в своей книге "Секреты Javascript Ninja" Джон Ресиг (создатель jQuery) имеет очень простой код, который будет обрабатывать кросс-браузерную консоль.проблемы с журналом. Он объясняет, что хотел бы иметь сообщение журнала, которое работает со всеми браузерами, и вот как он его закодировал:

function log() {
  try {
    console.log.apply(console, arguments);
  } catch(e) {
  try {
    opera.postError.apply(opera, arguments);
  }
  catch(e) {
    alert(Array.prototype.join.call( arguments, " "));
  }
}

для IE8 или поддержка консоли консоли.log (нет отладки, трассировки, ...) вы можете сделать следующее:

  • если консоль или консоль.log undefined: создание фиктивных функций для функции консоли (трассировка, отладка, журнал,...)

    window.console = { debug : function() {}, ...};

  • Else если консоль.журнал определен (IE8)и консоль.debug (любой другой) не определен: перенаправьте все функции ведения журнала на консоль.журнал, это позволяет сохранить эти журналы !

    window.console = { debug : window.console.log, ...};

не уверен в поддержке assert в различных версиях IE, но любые предложения приветствуются.


вы можете использовать кросс-браузерную оболочку:https://github.com/MichaelZelensky/log.js


для более старой версии IE (до IE8), это не прямо вперед, чтобы увидеть консоль войти в IE Developer Toolbar, Потратив часы исследований и пробуя много различных решений, наконец, следующая панель инструментов является отличным инструментом для меня:

основным преимуществом этого является предоставление консоли для IE6 или IE7, поэтому вы можете увидеть, что такое ошибка (в журнале консоли)

  • Примечание:
  • Это бесплатно
  • снимок экрана панели инструментов

enter image description here