抽空通过简书网学习了一下console,感觉高大上!
抽空看了一下简书中关于console的文章,为了便于自己今后查看,自己写了一遍!原文地址:http://www.jianshu.com/p/f961e1a03a56
测试代码在最下面
1.console.log(); console.debug()与console.info()与console.log一样
(a,b,c); 可接受多个参数,中间用逗号分开,默认输出完最后输出换行符
如果第一个参数是格式字符串(使用了格式占位符),后面的参数对应前面的占位符进行输出
占位符为一下五种%d/%i %s %f %o %c,分别是整数、字符串、浮点数、对象和css格式化样式
2.console.assert();---assert声称, 断言
接收至少两个参数,第一个参数的值或返回值为false的时候,将会在控制台上抛出一个异常并将其余参数作为异常描述输出.
3.console.count();
用于计数,输出它被调用了多少次。可以传入一个字符串作为参数,进行分类计数
4.console.clear();
清空控制台内容。
5.console.dir();
对一个对象进行检查,并以易于阅读和打印的格式显示。
6.console.error();
输出错误信息,红色的错误
7.console.warn();
输出警告信息,黄色的警告形式
8.console.table();
将传入的对象或数组这些复合数据以表格形式输出。
9.console.time(),console.timeEnd();
console.time(),console.timeEnd()方法计算一个操作的执行的时间console.time()是开始,console.timeEnd()是结束。可以传一个参数,参数为计时器的名称。
10.console.group(),console.groupCollapsed(),console.groupEnd();---Collapse倒塌(col(全部)+lapse(滑倒--slip));
用于将显示的信息分组,可以把信息进行折叠和展开。他们都可以传递一个参数,参数默认是分组名;用法都是一样的。
唯一区别就是console.group()是默认展开的,而console.groupCollapsed()默认是收起的。
11.console.profile(),console.profileEnd();
用来新建一个性能测试器,可以评估某段代码的性能,可以传一个参数,为生成的性能测试器的名字。
12.console.trace();
用来追踪函数的调用过程。在复杂的架构中可以查找到对应的调用路径。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>console</title> </head> <body> <script type="text/javascript"> //console.log(); var a = 15, b = 'abs',c; console.log(a, b, c); var d = 10.00, e = {a:1}, f = 'body:{background-color:red;}'; console.log(a, b, d, e, f); console.log('%d %s %f %o %c', a, b, d, e, f); //console.assert(); function consoleFn(arg1, arg2){ if(arg2 == undefined){ var a = console.assert(false, 'arg2未赋值');//抛出错误,并且输出,返回undefined console.log(a);//输出undefined }else{ console.assert(true,'true');//没有错误,返回undefined } } consoleFn(1); //console.count(); function count() { for (var i = 0; i < 5; i++) { var str = ''; if(i % 2 == 0){ str = "这是偶数"; }else{ str = "这是奇数"; } var a = console.count(str); } }; count(); //console.clear(); //console.dir(); var obj = { name:'李明', age:20 } var arr = [1, 2, 3]; var fn = function(){}; console.dir(obj); console.dir(arr); console.dir(fn); //console.error()与console.wran(); function errFn(a, b){ if(a == ''){ console.error('%s','a未定义'); } if(b == undefined){ console.warn('%s', 'b未定义'); } } errFn('',1); errFn(1); //console.table(); console.table(obj); console.table(arr); //console.time(); console.time('time1'); setTimeout(count(),1000); console.timeEnd('time1'); //console.group(); console.group('第一层(打开)'); console.group('第二层(打开)'); console.groupCollapsed('第三层(关闭)'); console.log('分组菜单闭合'); console.groupEnd(); console.groupEnd(); //console.profile(); console.profile('性能分析'); count(); console.profileEnd(); function aa(){ bb(); } function bb(){ console.trace(); console.log("a调用了b"); } aa(); //总结 var cons = console; if (cons) { cons.log('console学习暂告一段落\n'); cons.log("本文来自:%c浩3108的简书http://www.jianshu.com/p/f961e1a03a56", "color:red;font-weight:bold;"); } </script> </body> </html>