根据这篇文章,它在测试版中,但它不在发行版中?
当前回答
这是我的“IE,请不要崩溃”
typeof console=="undefined"&&(console={});typeof console.log=="undefined"&&(console.log=function(){});
其他回答
假设你不关心提醒的备用方法,这里有一个更简洁的方法来解决ie的缺点:
var console=console||{"log":function(){}};
它适用于IE8。点击F12打开IE8的开发者工具。
>>console.log('test')
LOG: test
如果你所有的console.log调用都是“undefined”,这可能意味着你仍然加载了一个旧的firebuglite (firebug.js)。它将覆盖IE8的console.log的所有有效函数,即使它们确实存在。这就是发生在我身上的事。
检查重写控制台对象的其他代码。
if (window.console && 'function' === typeof window.console.log) { window.console.log(o); }
更好的退路是:
var alertFallback = true;
if (typeof console === "undefined" || typeof console.log === "undefined") {
console = {};
if (alertFallback) {
console.log = function(msg) {
alert(msg);
};
} else {
console.log = function() {};
}
}