我如何打印消息到错误控制台,最好包括一个变量?

例如,像这样:

print('x=%d', x);

当前回答

像往常一样,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;
    }
}

其他回答

如果您正在使用Firebug,并且需要支持IE、Safari或Opera, Firebug Lite为这些浏览器添加了console.log()支持。

如果你使用Safari,你可以写

console.log("your message here");

它就出现在浏览器的控制台上。

最简单的方法是:

console.warn("Text to print on console");

关于上面提到的'throw()'的注意事项。它似乎完全停止了页面的执行(我在IE8中检查了),所以它对于记录“正在进行的进程”并不是很有用(比如跟踪某个变量……)

我的建议是在文档的某个地方添加一个textarea元素,并在需要时更改(或追加)它的值(这将更改其文本)以记录信息…

使用es6语法,你可以使用:

console.log(`x = ${x}`);