console.log有什么用?

请用一个代码示例解释如何在JavaScript中使用它。


当前回答

这与jQuery无关。console.log()引用控制台对象的日志函数,该函数提供了将信息记录到浏览器控制台的方法。这些方法仅用于调试目的,不应依赖于将信息呈现给最终用户。

其他回答

在java脚本中,没有输入和输出函数。因此使用console.log()方法来调试代码。它是一种日志记录方法。它将在控制台日志(开发工具)下打印。

在打开IE开发工具之前,它不会出现在IE8及以下版本。

A point of confusion sometimes is that to log a text message along with the contents of one of your objects using console.log, you have to pass each one of the two as a different argument. This means that you have to separate them by commas because if you were to use the + operator to concatenate the outputs, this would implicitly call the .toString() method of your object. This in most cases is not explicitly overriden and the default implementation inherited by Object doesn't provide any useful information.

在控制台尝试的例子:

>>> var myObj = {foo: 'bar'}
undefined
>>> console.log('myObj is: ', myObj);
myObj is: Object { foo= "bar"}

然而,如果你试图连接信息文本消息与对象的内容,你会得到:

>>> console.log('myObj is: ' + myObj);
myObj is: [object Object]

请记住,console。log实际上可以接受任意多的参数。

它不是jQuery特性,而是用于调试的特性。例如,当发生一些事情时,您可以将一些事情记录到控制台。例如:

$('#someButton').click(function() {
  console.log('#someButton was clicked');
  // do something
});

当你点击按钮时,你会看到#someButton在Firebug的“控制台”选项卡(或其他工具的控制台-例如Chrome的Web检查器)中被点击。

由于某些原因,控制台对象可能不可用。然后你可以检查它是否正确——这很有用,因为当你部署到生产环境时,你不必删除调试代码:

if (window.console && window.console.log) {
  // console is available
}

jQuery没有什么可做的,如果你想使用它,我建议你去做

if (window.console) {
    console.log("your message")
}

因此,当代码不可用时,您不会破坏代码。

正如评论中所建议的,您也可以在一个地方执行该命令,然后正常使用console.log

if (!window.console) { window.console = { log: function(){} }; }

console.log与jQuery无关。它是由调试器(包括Chrome调试器和Firebug)提供的一个通用对象/方法,允许脚本将数据(或大多数情况下的对象)记录到JavaScript控制台。