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 相关文章推荐
javascript高级程序设计第二版第十二章事件要点总结(常用的跨浏览器检测方法)
Aug 22 Javascript
如何获取JQUERY AJAX返回的JSON结果集实现代码
Dec 10 Javascript
jquery实现人性化的有选择性禁用鼠标右键
Jun 30 Javascript
JavaScript取得键盘按下方向键是哪个的方法
Aug 04 Javascript
js图片翻书效果代码分享
Aug 20 Javascript
js常用DOM方法详解
Feb 04 Javascript
node.js的事件机制
Feb 08 Javascript
Bootstrap 3浏览器兼容性问题及解决方案
Apr 11 Javascript
JS正则表达式完美实现身份证校验功能
Oct 18 Javascript
基于vue实现可搜索下拉框定制组件
Mar 26 Javascript
vue项目实现设置根据路由高亮对应的菜单项操作
Aug 06 Javascript
详解Vue的mixin策略
Nov 19 Vue.js
小米公司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
phpcms模块开发之swfupload的使用介绍
2013/04/28 PHP
php curl的深入解析
2013/06/02 PHP
PHP中include与require使用方法区别详解
2013/10/19 PHP
php操作mysqli(示例代码)
2013/10/28 PHP
Laravel 的数据库迁移的方法
2017/07/31 PHP
PHP日期和时间函数的使用示例详解
2020/08/06 PHP
JavaScript的各种常见函数定义方法
2014/09/16 Javascript
对比分析AngularJS中的$http.post与jQuery.post的区别
2015/02/27 Javascript
Dojo获取下拉框的文本和值实例代码
2016/05/27 Javascript
使用bootstrap实现多窗口和拖动效果
2016/09/22 Javascript
JS定时器实现数值从0到10来回变化
2016/12/09 Javascript
微信小程序开发的四十个技术窍门总结(推荐)
2017/01/23 Javascript
js实现适配不同的屏幕大小
2017/04/10 Javascript
vuex 使用文档小结篇
2018/01/11 Javascript
JavaScript写个贪吃蛇小游戏(超详细)
2020/03/17 Javascript
nginx配置域名后的二级目录访问不同项目的配置操作
2020/11/06 Javascript
详解ES6 中的Object.assign()的用法实例代码
2021/01/11 Javascript
Vue实现摇一摇功能(兼容ios13.3以上)
2021/01/26 Vue.js
[52:57]2014 DOTA2国际邀请赛中国区预选赛 LGD-CDEC VS HGT
2014/05/21 DOTA
对Python字符串中的换行符和制表符介绍
2018/05/03 Python
Python基础教程之异常详解
2019/01/10 Python
通过python实现弹窗广告拦截过程详解
2019/07/10 Python
pycharm无法导入本地模块的解决方式
2020/02/12 Python
Django Haystack 全文检索与关键词高亮的实现
2020/02/17 Python
pycharm中import呈现灰色原因的解决方法
2020/03/04 Python
Django模型中字段属性choice使用说明
2020/03/30 Python
python excel多行合并的方法
2020/12/09 Python
python中time tzset()函数实例用法
2021/02/18 Python
一款纯css3实现的鼠标经过按钮特效教程
2014/11/09 HTML / CSS
HTML5轻松实现全屏视频背景的示例
2018/04/23 HTML / CSS
HEMA英国:荷兰原创设计
2018/08/28 全球购物
团队口号大全
2014/06/06 职场文书
支部书记四风问题对照检查材料
2014/10/04 职场文书
2014年民警工作总结
2014/11/25 职场文书
同学会演讲稿
2019/04/02 职场文书
js中Map和Set的用法及区别实例详解
2022/02/15 Javascript