console.log有什么用?
请用一个代码示例解释如何在JavaScript中使用它。
console.log有什么用?
请用一个代码示例解释如何在JavaScript中使用它。
当前回答
它用于将(传递给它的任何内容)记录到Firebug控制台。主要用途是调试JavaScript代码。
其他回答
console.log与jQuery无关。
它将消息记录到调试控制台,例如Firebug。
jQuery没有什么可做的,如果你想使用它,我建议你去做
if (window.console) {
console.log("your message")
}
因此,当代码不可用时,您不会破坏代码。
正如评论中所建议的,您也可以在一个地方执行该命令,然后正常使用console.log
if (!window.console) { window.console = { log: function(){} }; }
可以查看控制台的地方!把它们都放在一个答案里。
火狐
http://getfirebug.com/
(你现在也可以使用Firefox内置的开发工具Ctrl+Shift+J (tools > Web developer > Error Console),但Firebug要好得多;使用Firebug)
Safari和Chrome浏览器
基本一样。
https://developers.google.com/chrome-developer-tools/docs/overview
https://developer.apple.com/technologies/safari/developer-tools.html
Internet Explorer
别忘了你可以在IE9或IE10中使用兼容性模式来调试IE7和IE8
http://msdn.microsoft.com/en-us/library/ie/gg589507 (v = vs.85) . aspx
http://msdn.microsoft.com/en-us/library/dd565628 (v = vs.85) . aspx
如果你必须在IE7中访问IE6的控制台,请使用Firebug Lite书签
http://getfirebug.com/firebuglite/寻找稳定的bookmarklet
http://en.wikipedia.org/wiki/Bookmarklet
歌剧
http://www.opera.com/dragonfly/
iOS
适用于所有iphone, iPod touch和ipad。
http://developer.apple.com/library/ios/ipad/#DOCUMENTATION/AppleApplications/Reference/SafariWebContent/DebuggingSafarioniPhoneContent/DebuggingSafarioniPhoneContent.html
现在,在iOS 6中,你可以在OS X中通过Safari查看控制台,只要你插入你的设备。或者你也可以使用模拟器,简单地打开Safari浏览器窗口,然后转到“开发”选项卡。在那里,您可以找到让Safari检查器与您的设备通信的选项。
Windows Phone, Android
它们都没有内置控制台,也没有书签功能。所以我们用 http://jsconsole.com/类型:听,它会给你一个脚本标签放在你的HTML。从那时起,您可以在jsconsole网站中查看您的控制台。
iOS和Android
您还可以使用http://html.adobe.com/edge/inspect/访问web检查器工具和任何设备上的控制台,使用他们方便的浏览器插件。
旧的浏览器问题
最后,如果你使用console.log登录代码,而没有同时打开开发工具,旧版本的IE会崩溃。幸运的是,这很容易解决。在你的代码顶部使用下面的代码片段:
if(!window.console){ window.console = {log: function(){} }; }
这将检查控制台是否存在,如果不存在,则将其设置为一个带有名为log的空白函数的对象。这边的窗户。Console和window.console.log从来不是真正未定义的。
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实际上可以接受任意多的参数。
log是开发人员编写代码的一种方法,它可以不引人注目地通知开发人员代码正在做什么。它可以用来提醒您存在问题,但在调试代码时不应该取代交互式调试器。它的异步性质意味着记录的值不一定代表调用方法时的值。
简而言之:使用console.log(如果可用)记录错误,然后使用您选择的调试器:Firebug, WebKit开发工具(Safari和Chrome内置),IE开发工具或Visual Studio修复错误。