我如何打印消息到错误控制台,最好包括一个变量?
例如,像这样:
print('x=%d', x);
我如何打印消息到错误控制台,最好包括一个变量?
例如,像这样:
print('x=%d', x);
当前回答
在《调试JavaScript:扔掉你的提醒!》中概述了一种跨浏览器的好方法。
其他回答
如果您正在使用Firebug,并且需要支持IE、Safari或Opera, Firebug Lite为这些浏览器添加了console.log()支持。
像往常一样,Internet Explorer是让您无法使用console.log()的笨重的旱冰鞋。
jQuery的日志可以很容易地进行调整,但是在任何地方都要添加它是一种痛苦。如果你正在使用jQuery,一个解决方案是把它放在你的jQuery文件的最后,首先缩小:
function log()
{
if (arguments.length > 0)
{
// Join for graceful degregation
var args = (arguments.length > 1) ? Array.prototype.join.call(arguments, " ") : arguments[0];
// This is the standard; Firebug and newer WebKit browsers support this.
try {
console.log(args);
return true;
} catch(e) {
// Newer Opera browsers support posting erros to their consoles.
try {
opera.postError(args);
return true;
}
catch(e)
{
}
}
// Catch all; a good old alert box.
alert(args);
return false;
}
}
关于上面提到的'throw()'的注意事项。它似乎完全停止了页面的执行(我在IE8中检查了),所以它对于记录“正在进行的进程”并不是很有用(比如跟踪某个变量……)
我的建议是在文档的某个地方添加一个textarea元素,并在需要时更改(或追加)它的值(这将更改其文本)以记录信息…
console.log("your message here");
为我工作…我正在找这个..我用火狐浏览器。 这是我的脚本。
$('document').ready(function() {
console.log('all images are loaded');
});
适用于火狐和Chrome浏览器。
要真正回答这个问题:
console.error('An error occurred!');
console.error('An error occurred! ', 'My variable = ', myVar);
console.error('An error occurred! ' + 'My variable = ' + myVar);
除了error,你还可以使用info, log或warn。