前言
Console在我们开发中应该使用很频繁并且都会用的一个工具,确实好用。但是你真的会用吗?可能有些用法你到现在都还不知道,那么今天我来给各位分享一下Console的比较具体的玩法,助你开发调试更容易。
正文
什么是Console?
Console是用于显示JS和DOM对象信息的单独窗口。并且向JS中注入1个 Console 对象,使用该对象可以输出信息到Console窗口中。
什么浏览器支持console?
很多人可能都知道 Chrome 和 FireFox(FireBug)中都支持 Console。而其他浏览器都支 持不好。比如 IE8 自带的开发工具虽然支持 Console,但功能比较单调,显示对象的时候都是显示 [Object,Object],而且不能点击查看对象里面的属性。IE6、IE7 虽然可以安装 Developer Toolbar,但也 不支持 console。Safari、Opera 都支持 Console,但使用上都没有 FireBug和 Chrome 的方便。现在firebug推出了firebuglite工具,可以让所有浏览器都支持Console功能,而且使用上和FireBug 几乎一样。
为什么不直接使用 alert 或自己写的 log?
使用 alert 不是一样可以显示信息,调试程序吗?alert 弹出窗口会中断程序, 如果要在循环中显示信息,手点击关闭窗口都累死。而且 alert 显示对象永远显示为[object ]。自己写的 log 虽然可以显示一些 object 信息,但很多功能支持都没有 console 好,看完后面 console 的介绍就知道了。
Console使用大全
console.log
console.log 是最简单输出信息到 console 窗口的方法,支持多个参数,该方法会把这些参数组合在一起显示。
log 方法第一个参数支持类似 C 语言 printf 字符串替换模式,Log 支持下面几种替换模式:
console.log('%d年%d月%d日', 2020, 5, 9)
// 2020年5月9日
console.log('我的名字是%s','吴佳')
// 我的名字是吴佳
console.log('圆周率:%f', 3.1415926)
// 圆周率:3.1415926
console.log('信息:%o', {
name: '吴佳',
age: 20,
sex: '男'
})
// 信息:{name: '吴佳', age: 20, sex: ’男‘}
console.debug、console.info、console.warn、console.error
这4种方法与log方法使用一模一样,只是显示的图标和文字颜色不一样
console.assert
assert 方法类似于单元测试中的断言,当 expression 表达式为 false 的时候,输出后面的信息
注:assert 方法在 firebuglite 不支持,Chrome 和 FireBug 支持
console.clear
该方法会清空 console 控制台中的所有信息
console.dirxml
显示网页的某个节点(node)所包含的html/xml代码
<body>
<table id="mytable">
<tr>
<td>A</td>
<td>A</td>
<td>A</td>
</tr>
<tr>
<td>bbb</td>
<td>aaa</td>
<td>ccc</td>
</tr>
<tr>
<td>111</td>
<td>333</td>
<td>222</td>
</tr>
</table>
</body>
<script type="text/javascript">
window.onload = function () {
var mytable = document.getElementById('mytable');
console.dirxml(mytable);
}
</script>
console.trace
trace 方法可以查看当前函数的调用堆栈信息,即当前函数是如何调用的
console.group、console.groupCollapsed、console.groupEnd
这3个函数用于把log等输出的信息进行分组,方便阅读查看。 groupCollapsed 方法与 group 方法一样,只是显示的分组默认是折叠的
console.time、console.timeEnd
我们经常需要测试 js 函数的执行时间,可能我们自己写代码在第1条语句和最后1条语句取当前时间相减。这组函数其实就实现了这样的功能,time(name)根据 name 创建1个新 的计时器。timeEnd(name)停止给定name 的计时器,并显示时间。
console.profile、console.profileEnd
这组方法用于打开浏览器的分析器,用于分析这组函数之间的 js 执行情况,需要打开浏览器JavaScript profiler面板进行查看
console.count
count 方法用于统计当前代码被执行过多少次,title 参数可以在次数前面输出额外的标题以帮助阅读
console.table
table方法把data对象用表格的方式显示出来,这在显示数组或者格式一样的JSON对象的时候非常有用。
直接将该DOM结点以DOM树的结构进行输出
结语
以上就是本文的全部内容了,任何问题欢迎留言指正,更详细的解释可以去查看官方API:
https://evelopers.google.com/web/tools/chrome-devtools/console/api