console.log导致代码停止运行

时间:2014-01-21 21:50:29

标签: javascript console.log

document.getElementById('myButton').onclick = function()
{    
    alert("button click");
    alert("bclick2");
    console.log("console log");
    alert("bclick3");
};

当我在tomcat服务器上的eclipse中运行它时,前两个对话框将显示,但不会显示第三个,这让我觉得它是console.log命令无法正常工作。

可能是什么问题?

2 个答案:

答案 0 :(得分:2)

您很可能会收到一个javascript错误,导致其余代码无法运行。 console对象仅在存在调试工具(如Firebug)时可用。为避免javascript错误无法使用,您可以通过以下支票将其包围:

if (window.console && window.console.log) {
    console.log("console log");
}

答案 1 :(得分:0)

要获得更强大的解决方案,请使用这段代码(取自twitter的源代码):

// Avoid `console` errors in browsers that lack a console.
(function() {
var method;
var noop = function () {};
var methods = [
    'assert', 'clear', 'count', 'debug', 'dir', 'dirxml', 'error',
    'exception', 'group', 'groupCollapsed', 'groupEnd', 'info', 'log',
    'markTimeline', 'profile', 'profileEnd', 'table', 'time', 'timeEnd',
    'timeStamp', 'trace', 'warn'
];
var length = methods.length;
var console = (window.console = window.console || {});

while (length--) {
    method = methods[length];

    // Only stub undefined methods.
    if (!console[method]) {
        console[method] = noop;
    }
}
}());