javascript控制台详解


Posted in Javascript onJune 25, 2015

一、显示信息的命令

console.log(); //控制台输入 网页中不会输出

console.info(); //一般信息

console.debug(); //除错信息

console.warn(); //警告提示

console.error(); //错误提示

“console.log();” 可以用来取代 “alert();” 或 “document.write();” 比如,在网页中写入 “console.log("Hello World");” 然后会在控制台输入,但是网页中并不会输入。

javascript控制台详解

javascript控制台详解

我们在代码中插入如下代码:

console.info( "这是info" );

console.debug( "这是debug" );

console.warn( "这是warn" );

console.error( "这是error" );

加载后打开控制台会看到像下面这样:

javascript控制台详解

二、占位符

console对象的上面5种方法,都可以使用printf风格的占位符。不过,占位符的种类比较少,只支持字符(%s)、整数(%d或%i)、浮点数(%f)和对象(%o)四种。比如:

console.log( "%d年%d月%d日" , 2011,3,26 );

console.log( "圆周率是%f" , 3.1415926 );

javascript控制台详解

%o占位符,可以用来查看一个对象内部情况。比如,有这样一个对象:

var dog = {} ;

dog.name = "大毛";

dog.color = "黄色";

然后,对它使用o%占位符:

console.log( "%o" , dog );

javascript控制台详解

三、分组显示

console.group(); console.groupEnd(); (这两个方法是成对使用的)
console.group("第一组信息");


console.log("第一组第一条");


console.log("第一组第二条");

console.groupEnd();

console.group("第二组信息");


console.log("第二组第一条");


console.log("第二组第二条");

console.groupEnd();

javascript控制台详解

四、console.dir();(显示某一个对象的所有属性和方法)

比如,现在为第二节的dog对象,添加一个bark()方法,然后用 “dir();” 显示出来:

dog.bark = function(){ alert( "汪汪汪" ); };

console.dir( dog );

javascript控制台详解

五、console.dirxml();(获取某个节点所包含的所有html/xml代码)

var table = document.getElementById("table1"); //获取节点

console.dirxml( table ); //显示节点的所有代码

javascript控制台详解

六、console.assert();(用来判断一个表达式或变量是否为真。如果结果为否,则在控制台输出一条相应信息,并且抛出一个异常)

var result = 0;

console.assert( result ); //false

var year = 2000;

console.assert( year == 2011 ); //false

javascript控制台详解

七、console.trace();(用来追踪函数的调用轨迹)

/*一个加法函数*/

function add( a,b ){

return a+b;

}

我想知道这个函数是如何被调用的,在其中加入console.trace()方法就可以了:

function add( a,b ){

console.trace();

return a+b;

}

假定这个函数的调用代码如下:

var x = add3( 1,1 );

function add3( a,b ){ return add2(a,b); }

function add2( a,b ){ return add1( a,b ); }

function add1( a,b ){ return add( a,b ); }

运行后,会显示add()的调用轨迹,从上到下依次为add()、add1()、add2()、add3()

javascript控制台详解

八、console.time();和console.timeEnd();(用来显示代码的运行时间)

console.time( "计时器一" );


for( var i=0;i<1000;i++ ){



for(var j=0;j<1000;j++){}


}


console.timeEnd( "计时器一" );

javascript控制台详解

九、性能分析

性能分析(Profiler)就是分析程序各个部分的运行时间,找出瓶颈所在,使用的方法是console.profile();

假定有一个函数Foo(),里面调用了另外两个函数funcA()和funcB(),其中funcA()调用10次,funcB()调用1次。

function Foo(){



for(var i=0;i<10;i++){funcA(1000);}



funcB(10000);


}


function funcA(count){



for(var i=0;i<count;i++){}


}


function funcB(count){



for(var i=0;i<count;i++){}


}

然后分析 “Foo();” 的运行性能:

console.profile('性能分析器一');


Foo();


console.profileEnd();

javascript控制台详解

标题栏提示,一共运行了12个函数,共耗时2.656毫秒。其中funcA()运行10次,耗时1.391毫秒,最短运行时间0.123毫秒,最长0.284毫秒,平均0.139毫秒;funcB()运行1次,耗时1.229ms毫秒。

除了使用 “console.profile();”方法,firebug还提供了一个"概况"(Profiler)按钮。第一次点击该按钮,"性能分析"开始,你可以对网页进行某种操作(比如ajax操作),然后第二次点击该按钮,"性能分析"结束,该操作引发的所有运算就会进行性能分析。

javascript控制台详解

十、属性菜单

控制台面板的名称后面,有一个倒三角,点击后会显示属性菜单。

javascript控制台详解

默认情况下,控制台只显示Javascript错误。如果选中Javascript警告、CSS错误、XML错误都送上,则相关的提示信息都会显示。

这里比较有用的是显示"XMLHttpRequests" 也就是显示ajax请求。选中以后,网页的所有ajax请求,都会在控制台面板显示出来。

比如,点击一个YUI示例,控制台就会告诉我们,它用ajax方式发出了一个GET请求,http请求和响应的头信息和内容主体,也都可以看到。

javascript控制台详解

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
JavaScript实现判断图片是否加载完成的3种方法整理
Mar 13 Javascript
jquery的幻灯片图片切换效果代码分享
Sep 07 Javascript
解决JavaScript数字精度丢失问题的方法
Dec 03 Javascript
学习JavaScript鼠标响应事件
Dec 25 Javascript
功能强大的Bootstrap组件(结合js)
Aug 03 Javascript
轻松掌握JavaScript中介者模式
Aug 26 Javascript
Angular动态添加、删除输入框并计算值实例代码
Mar 29 Javascript
jQuery实现 RadioButton做必选校验功能
Jun 15 jQuery
vue.js中npm安装教程图解
Apr 10 Javascript
vue-swiper的使用教程
Aug 30 Javascript
vue print.js打印支持Echarts图表操作
Nov 13 Javascript
react如何快速设置文件路径别名
Apr 28 Javascript
jquery实现浮动的侧栏实例
Jun 25 #Javascript
JQuery实现鼠标移动图片显示描述层的方法
Jun 25 #Javascript
Node.js中的process.nextTick使用实例
Jun 25 #Javascript
Ajax中解析Json的两种方法对比分析
Jun 25 #Javascript
新手快速学习JavaScript免费教程资源汇总
Jun 25 #Javascript
JavaScript中字符串(string)转json的2种方法
Jun 25 #Javascript
深入理解JavaScript编程中的原型概念
Jun 25 #Javascript
You might like
使用php验证复选框有效性的示例
2013/11/13 PHP
PHP5中实现多态的两种方法实例分享
2014/04/21 PHP
phpword插件导出word文件时中文乱码问题处理方案
2014/08/19 PHP
WordPress中对访客评论功能的一些优化方法
2015/11/24 PHP
PHP 接入支付宝即时到账功能
2016/09/18 PHP
Yii 2.0中场景的使用教程
2017/06/02 PHP
php使用fputcsv实现大数据的导出操作详解
2020/02/27 PHP
Javascript的一种模块模式
2010/09/08 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(三)情景对话中仿打字机输出文字
2013/01/23 Javascript
jQuery弹出层始终垂直居中相对于屏幕或当前窗口
2013/04/01 Javascript
直接拿来用的15个jQuery代码片段
2015/09/23 Javascript
AngularJS中的表单简单入门
2016/07/28 Javascript
Vue.js教程之计算属性
2016/11/11 Javascript
JS判断时间段的实现代码
2017/06/14 Javascript
js 显示日期时间的实例(时间过一秒加1)
2017/10/25 Javascript
使用Bootstrap和Vue实现用户信息的编辑删除功能
2017/10/25 Javascript
微信小程序性能优化之checkSession的使用
2019/03/06 Javascript
vue 解决form表单提交但不跳转页面的问题
2019/10/30 Javascript
vue中get请求如何传递数组参数的方法示例
2019/11/08 Javascript
vue中使用v-for时为什么不能用index作为key
2020/04/04 Javascript
[02:12]DOTA2英雄基础教程 变体精灵
2013/12/16 DOTA
[00:09]DOTA2全国高校联赛 精彩活动引爆全场
2018/05/30 DOTA
python装饰器decorator介绍
2014/11/21 Python
Python实现的本地文件搜索功能示例【测试可用】
2018/05/30 Python
解决python3 Pycharm上连接数据库时报错的问题
2018/12/03 Python
详解用python写网络爬虫-爬取新浪微博评论
2019/05/10 Python
使用tensorflow实现矩阵分解方式
2020/02/07 Python
Clarins娇韵诗美国官网:法国天然护肤品牌
2016/09/26 全球购物
CAT鞋美国官网:CAT Footwear
2017/11/27 全球购物
美发活动策划书
2014/01/14 职场文书
搭讪开场白台词大全
2015/05/28 职场文书
呼啸山庄读书笔记
2015/06/29 职场文书
初中物理教学反思
2016/02/19 职场文书
幼儿园2016年感恩节活动总结
2016/04/01 职场文书
css3 实现文字闪烁效果的三种方式示例代码
2021/04/25 HTML / CSS
Redis Cluster 集群搭建你会吗
2021/08/04 Redis