首页 > 代码库 > 使用Console命令调试JS

使用Console命令调试JS

一、console 的对象常用的方法

1、console.log(object[, object, ...])
使用频率最高的一条语句:向控制台输出一条消息。支持 C 语言 printf 式的格式化输出。当然,也可以不使用格式化输出来达到同样的目的

 

2、console.debug(object[, object, ...])
向控制台输出一条信息,它包括一个指向该行代码位置的超链接。

 

3、console.info(object[, object, ...])
向控制台输出一条信息,该信息包含一个表示“信息”的图标,和指向该行代码位置的超链接。

 

4、console.warn(object[, object, ...])

同 info。区别是图标与样式不同。

 

5、console.error(object[, object, ...])

同 info。区别是图标与样式不同。error 实际上和 throw new Error() 产生的效果相同,使用该语句时会向浏览器抛出一个 js 异常。

 

6、console.assert(expression[, object, ...])

断言,测试一条表达式是否为真,不为真时将抛出异常(断言失败)。

 

7、console.dir(object)

输出一个对象的全部属性(输出结果类似于 DOM 面板中的样式)。

 

8、console.dirxml(node)
输出一个 HTML 或者 XML 元素的结构树,点击结构树上面的节点进入到 HTML 面板。

 

9、console.trace()
输出 Javascript 执行时的堆栈追踪。

 

10、console.group(object[, object, ...])
输出消息的同时打开一个嵌套块,用以缩进输出的内容。调用 console.groupEnd() 用以结束这个块的输出。

 

11、console.groupCollapsed()
同 console.group(); 区别在于嵌套块默认是收起的。

 

12、console.time(name)
计时器,当调用 console.timeEnd(name);并传递相同的 name 为参数时,计时停止,并输出执行两条语句之间代码所消耗的时间(毫秒)。

 

13、console.profile([title])
与 profileEnd() 结合使用,用来做性能测试,与 console 面板上 profile 按钮的功能完全相同。

 

14、console.count([title])
输出该行代码被执行的次数,参数 title 将在输出时作为输出结果的前缀使用。

 

15、console.clear()
清空控制台

 

二、使用console调试JS脚本实例

 

1、console.log()

 

最简单的方法是console.log(),可以用来取代alert()或document.write()。

另外,根据信息的不同性质,console对象还有4种显示信息的方法,分别是一般信息console.info()、除错信息console.debug()、警告提示console.warn()、错误提示console.error()。

例如

 

  console.info("这是info");

  console.debug("这是debug");

  console.warn("这是warn");

  console.error("这是error");

 

加载时,控制台会显示如下内容

 

 

 

2、占位符

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

例如

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

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

 

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

  var dog = {} ;

  dog.name = "大毛" ;

  dog.color = "黄色";

 

%o占位符的使用

 

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

 

显示如图

 

 

 

 

3、console.dir()查看对象的信息

 

console.dir()可以显示一个对象所有的属性和方法。

 

例如

 

    <script type="text/javascript">           var info = {                blog:"ddd",                tel:25422223,                message:"欢迎你使用"            };           console.dir(info);    </script>

 

4、console.dirxml() 显示某个节点的内容

 

console.dirxml()用来显示网页的某个节点(node)所包含的html/xml代码。

例如

var table = document.getElementById("table1");

console.dirxml(table);

 

5、console.assert()判断变量是否是真

 

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

例如

  var result = 1;

  console.assert( result );

  var year = 2000;

  console.assert(year == 2011 );

 

 

6、console.trace()

 

console.trace()用来追踪函数的调用轨迹。

 

 

7、console.time()和console.timeEnd()

 

用来显示代码的运行时间。

例如

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

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

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

  }

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

效果

 

 

8、console.profile()

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

 

例如

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

  Foo();

  console.profileEnd();

 

使用Console命令调试JS