AnA*_*ice 11 javascript firefox firebug firefox-3
我有以下内容:
console.log (a.time_ago() + ' ' + b.time_ago());
Run Code Online (Sandbox Code Playgroud)
这在FireFox 3中有所突破,这意味着当FF在JS中击中该行时,它就不会再进一步了.奇怪的是,如果我打开Firebug它不会破坏并继续正常.一些firebug如何防止这个问题?
我对这个感到困惑.关于为什么console.log会破坏firefox 3的任何想法,但是如果firebug是打开的话不是吗?
谢谢
arn*_*rhs 30
这不仅仅是Firefox.您的代码将停止在每个浏览器中运行(除了Chrome和Safari之外(在某些情况下),因为它们内置了console.log()及其开发人员工具.)
这是因为当你没有打开firebug时,没有定义对象"console".您应该注意不要在代码中保留console.log()函数,否则它将在每个浏览器中中断.
我想补充说我有时使用过这个函数:
function log () {
if (typeof console == 'undefined') {
return;
}
console.log.apply(console, arguments);
}
Run Code Online (Sandbox Code Playgroud)
然后你可以简单地打电话:
log(somevar, anothervar);
Run Code Online (Sandbox Code Playgroud)
它将以与console.log相同的方式工作,但如果未加载firebug则不会失败(并且输入的时间更短:P)
干杯