JavaScript中的console.group()函数详细介绍


Posted in Javascript onDecember 29, 2014

在使用console.log()或者其它日志级别的控制台输出功能时,日志输出是没有层级关系的。当程序中日志输出较多时,这一局限性将带来不小的麻烦。为了解决这一问题,可以使用console.group()。以下面代码为例:

function doTask(){

    doSubTaskA(1000);

    doSubTaskA(100000);

    console.log("Task Stage 1 is completed");

    doSubTaskB(10000);

    console.log("Task Stage 2 is completed");

    doSubTaskC(1000,10000);

    console.log("Task Stage 3 is completed");

}

function doSubTaskA(count){

    console.log("Starting Sub Task A");

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

}

 

function doSubTaskB(count){

    console.log("Starting Sub Task B");

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

}

 

function doSubTaskC(countX,countY){

    console.log("Starting Sub Task C");

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

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

    }

}
doTask();

在Firebug控制台中的输出结果为:

JavaScript中的console.group()函数详细介绍

可以看到,本应有一定层级关系的日志输出在显示时并没有任何区别。为了添加层级关系,可以对日志输出进行分组,在开始分组的地方插入console.group(),在结束分组的地方插入console.groupEnd():

function doTask(){

    console.group("Task Group");

    doSubTaskA(1000);

    doSubTaskA(100000);

    console.log("Task Stage 1 is completed");

    doSubTaskB(10000);

    console.log("Task Stage 2 is completed");

    doSubTaskC(1000,10000);

    console.log("Task Stage 3 is completed");

    console.groupEnd();

}

function doSubTaskA(count){

    console.group("Sub Task A Group");

    console.log("Starting Sub Task A");

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

    console.groupEnd();

}

 

function doSubTaskB(count){

    console.group("Sub Task B Group");

    console.log("Starting Sub Task B");

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

    console.groupEnd();

}

 

function doSubTaskC(countX,countY){

    console.group("Sub Task C Group");

    console.log("Starting Sub Task C");

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

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

    }

    console.groupEnd();

}
doTask();

插入console.group()语句后Firebug控制台中的输出结果为:

JavaScript中的console.group()函数详细介绍

浏览器支持

console.group()与console.log()一样,在有调试工具的浏览器上支持较好,各大浏览器均支持此功能。

Javascript 相关文章推荐
代码精简的可以实现元素圆角的js函数
Jul 21 Javascript
JavaScript 闭包在封装函数时的简单分析
Nov 28 Javascript
基于jQuery的树控件实现代码(asp.net+json)
Jul 11 Javascript
jquery 检测元素是否存在的实例代码
Nov 19 Javascript
鼠标滚轴控制文本框值的JS代码
Nov 19 Javascript
jquery实现点击展开列表同时隐藏其他列表
Aug 10 Javascript
jquery实现楼层滚动效果
Jan 01 jQuery
使用vuex的state状态对象的5种方式
Apr 19 Javascript
详解如何在vue-cli中使用vuex
Aug 07 Javascript
Node.js系列之安装配置与基本使用(1)
Aug 30 Javascript
基于JavaScript判断两个对象内容是否相等
Jan 10 Javascript
jQuery实现推拉门效果
Oct 19 jQuery
小米公司JavaScript面试题
Dec 29 #Javascript
谷歌浏览器调试JavaScript小技巧
Dec 29 #Javascript
JavaScript中的console.trace()函数介绍
Dec 29 #Javascript
JavaScript中的console.profile()函数详细介绍
Dec 29 #Javascript
jQuery中element选择器用法实例
Dec 29 #Javascript
JavaScript中的console.time()函数详细介绍
Dec 29 #Javascript
JavaScript前端图片加载管理器imagepool使用详解
Dec 29 #Javascript
You might like
多文件上载系统完整版
2006/10/09 PHP
使用PHP socke 向指定页面提交数据
2008/07/23 PHP
php+html5基于websocket实现聊天室的方法
2015/07/17 PHP
利用PHP将部分内容用星号替换
2020/04/21 PHP
PHP中substr_count()函数获取子字符串出现次数的方法
2016/01/07 PHP
zend framework重定向方法小结
2016/05/28 PHP
详解PHP处理字符串类似indexof的方法函数
2017/06/11 PHP
Laravel如何使用Redis共享Session
2018/02/23 PHP
表单填写时用回车代替TAB的实现方法
2007/10/09 Javascript
niceTitle 基于jquery的超链接提示插件
2010/05/31 Javascript
JavaScript获取鼠标移动时的坐标(兼容IE8、chome谷歌、Firefox)
2014/09/13 Javascript
js实现遍历含有input的table实例
2015/12/07 Javascript
深入分析javascript中console命令
2016/08/14 Javascript
AngularJS bootstrap启动详解及实例代码
2016/09/14 Javascript
Angular实现图片裁剪工具ngImgCrop实践
2017/08/17 Javascript
Angular2里获取(input file)上传文件的内容的方法
2017/09/05 Javascript
jQuery实现火车票买票城市选择切换功能
2017/09/15 jQuery
vue2.0 elementUI制作面包屑导航栏
2018/02/22 Javascript
利用Blob进行文件上传的完整步骤
2018/08/02 Javascript
jQuery基于随机数解决中午吃什么去哪吃问题示例
2018/12/29 jQuery
详解React服务端渲染从入门到精通
2019/03/28 Javascript
js中的this的指向问题详解
2019/08/29 Javascript
layer iframe 设置关闭按钮的方法
2019/09/12 Javascript
javascript单张多张图无缝滚动实例代码
2020/05/10 Javascript
JS实现公告上线滚动效果
2021/01/10 Javascript
浅谈Vue开发人员的7个最好的VSCode扩展
2021/01/20 Vue.js
python 求1-100之间的奇数或者偶数之和的实例
2019/06/11 Python
在cmd中查看python的安装路径方法
2019/07/03 Python
使用Python实现画一个中国地图
2019/11/23 Python
使用python实现多维数据降维操作
2020/02/24 Python
VS2019+python3.7+opencv4.1+tensorflow1.13配置详解
2020/04/16 Python
HTML5本地存储之Database Storage应用介绍
2013/01/06 HTML / CSS
2016年春季运动会广播稿
2015/08/19 职场文书
读《皮囊》有感:理解是对他人的最大的善举
2019/11/14 职场文书
Django利用AJAX技术实现博文实时搜索
2021/05/06 Python
Python+Matplotlib图像上指定坐标的位置添加文本标签与注释
2022/04/11 Python