console.log有什么用?
请用一个代码示例解释如何在JavaScript中使用它。
console.log有什么用?
请用一个代码示例解释如何在JavaScript中使用它。
当前回答
使用console.log向页面添加调试信息。
许多人使用alert(hasNinjas)来实现这一目的,但是console.log(hasNinjas)更容易使用。使用警报弹出一个模态对话框,阻止用户界面。
编辑:我同意巴蒂斯特·佩尔内特和扬·汉尼克的观点,检查窗口是一个非常好的主意。首先定义Console,以便在没有可用的控制台时代码不会中断。
其他回答
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 ()
console.log()是JavaScript中的一个函数,用于打印之前在其中定义的任何类型的变量,或者只是打印需要显示给用户的任何消息。
如代码:
function func() { return (5 * 18); }
console.log(func());
IMG:
输出:
它不是jQuery特性,而是用于调试的特性。例如,当发生一些事情时,您可以将一些事情记录到控制台。例如:
$('#someButton').click(function() {
console.log('#someButton was clicked');
// do something
});
当你点击按钮时,你会看到#someButton在Firebug的“控制台”选项卡(或其他工具的控制台-例如Chrome的Web检查器)中被点击。
由于某些原因,控制台对象可能不可用。然后你可以检查它是否正确——这很有用,因为当你部署到生产环境时,你不必删除调试代码:
if (window.console && window.console.log) {
// console is available
}
console.log将调试信息记录到某些浏览器(安装了Firebug的Firefox, Chrome, IE8,任何安装了Firebug Lite的浏览器)的控制台。在Firefox上,它是一个非常强大的工具,允许您检查对象或HTML元素的布局或其他属性。它与jQuery无关,但在使用jQuery时,通常会做两件事:
为Firebug安装firerequery扩展。除了其他优点外,这使得jQuery对象的日志记录看起来更好。 创建一个更符合jQuery链接代码约定的包装器。
这通常是这样的意思:
$.fn.log = function() {
if (window.console && console.log) {
console.log(this);
}
return this;
}
你可以调用它,比如
$('foo.bar').find(':baz').log().hide();
轻松检查jQuery链内部。
可以查看控制台的地方!把它们都放在一个答案里。
火狐
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从来不是真正未定义的。