js调试工具Console控制台命令
JS原生中默认是没有console对象,这是宿主对象(也就是游览器)提供的内置对象。
用于访问调试控制台, 在不同的浏览器里效果可能不同
console.log('用于输出普通信息')
console.info('用于输出提示性信息')
console.error('用于输出错误信息')
console.warn('用于输出警示信息')
console.debug('用于输出调试信息')
console对象的上面5种方法,都可以使用printf风格的占位符。不过,占位符的种类比较少,
支持字符(%s)、整数(%d或%i)、浮点数(%f)和对象(%o或者%O)四种。
console.log('%d年%d月%d日',2017,8,20)
%o(小写o):如果是对象则打印出一个对象的内部的属性和方法,如果是一个DOM对象则转化为DOM元素输出(输出带标签的html代码)
%O(大写O):不管是对象还是DOM元素,都按照对象的JSON形式输出
console.dir(object):(可以省略console,简写为dir(object)),效果和%O占位符一样,转换为对象以后以对象的JSON形式输出
占位符%c把占位符之后的字符串按照指定的样式格式化后输出console.log("%c Text","font-size:50px;");
console.dirxml(document):用来显示网页的某个节点(node)所包含的html/xml代码
console.group('组名')和console.groupEnd()
把console.group('组名')和console.groupEnd()之间包含的输出信息按照组的方式输出,如:
console.group('第一组');
console.log('aaa');
console.error('bbb');
console.groupEnd();
console.group('第二组');
console.log('ccc');
console.info('ddd');
console.groupEnd();
console.group()显示的分组默认情况时展开的,如果想要默认折叠的可以使用console.groupCollapsed(),依然是使用console.groupEnd()结束,这样分组信息默认是折叠的
console.assert(expression,object)
接收至少两个参数,第一个参数的值或返回值为false的时候,将会在控制台上抛出一个异常并将第二个参数作为异常描述输出.
console.count('name')方法用于计数,输出被调用了多少次。
function greet(user) {console.count(user);}
greet('bob');
greet('alice');
greet('bob');
显示:
bob:1
alice:1
bob:2
console.countReset('name'):将一个计数清零
console.time('name')和console.timeEnd('name')之间包含一些代码,返回中间的代码运行的时间。
console.profile('name')和console.profileEnd('name')之间包含一些代码,在控制台的性能中记录CPU的性能。
monitor(fun_name)和unmonitor(fun_name)之间包含一些代码,监听包含的代码中指定函数名的函数执行,并输出包含了函数的名称及执行时所传入的参数的信息
console.trace()用来追踪函数的调用轨迹。放在要追踪的函数中就可以了。
copy(object)命令可以将在控制台获取到的内容复制到剪贴板,如copy(document.body)
keys(object)和values(object) :前者返回传入对象所有属性名组成的数组,后者返回所有属性值组成的数组
console.table(object):以表格的形式输出指定的对象的属性和值
$_ :命令返回最近一次表达式执行的结果,功能跟按向上的方向键再回车是一样的
$0~$4 :代表了最近5个你选择过的DOM节点。最多保存5个,如果不够5个,则返回undefined。
keys(object) // 取对象的键名, 返回键名组成的数组
values(object) // 去对象的值, 返回值组成的数组
console.clear():清空控制台