console.log有什么用?

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


当前回答

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实际上可以接受任意多的参数。

其他回答

如果使用Firebug等工具检查代码,则可以查看记录到控制台的任何消息。假设你这样做:

console.log('Testing console');

当您访问Firebug(或您决定使用的任何工具来检查代码)中的控制台时,您将看到您告诉函数要记录的任何消息。当您想要查看函数是否正在执行,或者变量是否被正确传递/赋值时,这特别有用。实际上,它对于找出代码中的错误是很有价值的。

Console.log()用于开发人员记录输出信息。

您还有如下所示的其他控制台方法

console.assert ()

//如果第一个参数为假,记录消息和堆栈跟踪到控制台。

console.clear ()

//清除控制台。

console.count ()

//记录使用给定标签调用该行的次数。

控制台countReset()。

//重置带有给定标签的计数器的值。

console.debug ()

//输出消息到控制台,日志级别为debug。

控制台dir()。

//显示指定JavaScript对象属性的交互式列表。这个清单允许您使用公开三角形来检查子对象的内容。

控制台dirxml()。

//如果可能,显示指定对象的XML/HTML元素表示;如果不可能,显示JavaScript对象视图。

console.error ()

//输出错误信息。您可以在此方法中使用字符串替换和附加参数。

console.exception ()

/ /非标准 // error()的别名。

console.group ()

//创建一个新的内联组,将输出后面的所有内容缩进另一层。要后退一层,调用groupEnd()。

console.groupCollapsed ()

//创建一个新的内联组,将输出后面的所有内容缩进另一层。但是,与group()不同的是,它从内嵌组开始折叠,需要使用一个公开按钮来展开它。要后退一层,调用groupEnd()。

console.groupEnd ()

//退出当前内联组。

console.info ()

//信息记录。您可以在此方法中使用字符串替换和附加参数。

console.log ()

//日志信息的一般输出。您可以在此方法中使用字符串替换和附加参数。

console.profile ()

/ /非标准 //启动浏览器内置的分析器(例如,Firefox性能工具)。您可以为概要文件指定一个可选的名称。

控制台profileEnd()。

/ /非标准 //停止分析器。您可以在浏览器的性能工具(例如,Firefox性能工具)中看到生成的概要文件。

console.table ()

//将表格数据显示为表。

console.time ()

//使用指定的名称作为输入参数启动计时器。在给定的页面上可以同时运行多达10,000个计时器。

console.timeEnd()

//停止指定的计时器,并以毫秒为单位记录从它启动以来经过的时间。

控制台timeLog()。

//将指定定时器的值记录到控制台。

console.timeStamp ()

/ /非标准 //添加一个标记到浏览器的时间轴或瀑布工具。

console.trace ()

//输出堆栈跟踪。

console.warn ()

它会发布一个日志消息到浏览器的javascript控制台,例如Firebug或开发者工具(Chrome / Safari),并将显示执行它的行和文件。

此外,当你输出一个jQuery对象时,它会在DOM中包含对该元素的引用,点击它就会在Elements/HTML选项卡中找到该元素。

您可以使用各种方法,但要注意,要在Firefox中工作,必须打开Firebug,否则整个页面将崩溃。无论你记录的是一个变量、数组、对象还是DOM元素,它都会给你一个完整的分解,包括对象的原型(总是有趣的)。您还可以包含任意数量的参数,它们将被空格替换。

console.log(  myvar, "Logged!");
console.info( myvar, "Logged!");
console.warn( myvar, "Logged!");
console.debug(myvar, "Logged!");
console.error(myvar, "Logged!");

每个命令都显示不同的标识。

你也可以使用console.profile(profileName);开始分析一个函数,脚本等。然后用console.profileEnd(profileName)结束它;它会显示在你的Chrome配置文件选项卡(不知道与FF)。

要获得完整的参考,请访问http://getfirebug.com/logging,我建议您阅读它。(跟踪、组、分析、对象检查)。

希望这能有所帮助!

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

log是开发人员编写代码的一种方法,它可以不引人注目地通知开发人员代码正在做什么。它可以用来提醒您存在问题,但在调试代码时不应该取代交互式调试器。它的异步性质意味着记录的值不一定代表调用方法时的值。

简而言之:使用console.log(如果可用)记录错误,然后使用您选择的调试器:Firebug, WebKit开发工具(Safari和Chrome内置),IE开发工具或Visual Studio修复错误。