<rmcreative>

RSS

console.log и IE

4 марта 2011

В очередной раз забывшись отправил на сервер

console.log("something happened");

Всё хорошо, но в IE этого объекта нет и браузер будет ругаться. Можно проверить объект и метод на undefined, а можно подавить ошибки короче и надёжнее:

try { console.log("something happened"); } catch (e) {}

Комментарии RSS

  1. №4018
    Ekstazi
    Ekstazi 04 марта 2011 г., 22:53:28

    А еще есть firebug lite )

  2. №4019
    Sam
    Sam 04 марта 2011 г., 22:56:40

    Только вот он не спасёт от ругани IE у пользователей.

  3. №4020
    Ekstazi
    Ekstazi 04 марта 2011 г., 22:57:43

    Это точно ) Поэтому IE сносить надо, пока еще не поздно )))

  4. №4022
    tz-lom
    tz-lom 04 марта 2011 г., 23:11:45

    а ещё можно для IE любезно создать этот объект как заглушку и не писать сотни бесполезного кода

  5. №4024
    WebRemeslo
    WebRemeslo 05 марта 2011 г., 2:38:01

    tz-lom дал дельный совет. Нужно постоянное решение.

  6. №4025
    idle
    idle 05 марта 2011 г., 6:46:29

    Если код на сервере, это продакшн код, то никаких console.log() в нём быть не должно и городить ловушки для него, либо заглушки смыла нет вовсе — лишние строки.

  7. №4026
    mitallast
    mitallast 05 марта 2011 г., 8:27:44

    Вообще-то firefox без firebug тоже будет ругаться. Будет ругаться и с неактивным firebug.

    Точно так и в ие8, например. Зачем нужен console.log, если есть пошаговая отладка + точки останова, которые еще ни разу не подводили?

  8. №4032
    Костег
    Костег 05 марта 2011 г., 12:42:18

    console.log - это что-то типа var_dump в php. Пользоваться-то можно, но вот насколько это целесообразно - спроный вопрос.

  9. №4038
    Сергей
    Сергей 05 марта 2011 г., 18:13:55
  10. №4043
    Сергей
    Сергей 06 марта 2011 г., 16:37:12

    Во-во... Оборачивать в try-catch - маразм. Такое советовать нельзя. Переопределить ее на пустую если unfdefined и всего делов...

  11. №4103
    SkyMan
    SkyMan 12 марта 2011 г., 22:20:25

    Как на счет

    window.console && window.log('Hello')

    ??

  12. №5043
    1
    1 21 июля 2011 г., 8:54:56

    Вот так?

    if (typeof(console) == 'undefined') {
        var console = {
            log: function(message) {},
            info: function(message) {},
            warn: function(message) {},
            error: function(message) {
                alert(message);
            }
        }
    }
  1. Почта опубликована не будет.

  2. Можно использовать синтаксис Markdown или HTML.

  3. Введите ответ в поле. Щёлкните, чтобы получить другую задачу.