Firebug插件 和 Chrome的JavaScript控制台 都有一个全局变量 conslole .
首先是大家最常用来调试的console.log([data]:any[,…args]:any),很多时候我们需要查看函数的参数是不是我们想要的值或者结果是不是我们预想的值的时候一般会使用它。
1. console.log
console.log(object[, object, …])
这样就能在控制台打印出 : Here is log!
console.log("Here is log!");
如果要输入的内容存在变量,可以用多个参数的方式实现:
var firstName = "Maple", familyName = "Jan";
console.log("My name is ", firstName, " ", familyName); // My name is Maple Jan
还可以像C语言那样使用占位符:
var firstName = "Maple", familyName = "Jan";
console.log("My name is %s %s", firstName, familyName); // My name is MapleJan
还可以这样写
var firstName = "Maple", familyName = "Jan", m = "m", a = "a", n = "n";
console.log("My name is %s %s. I am a ", firstName, familyName, m, a, n); // My name is Maple Jan. I am a m a n
占位符:
Pattern | Type |
---|---|
%s | String (字符串) |
%d, %i | Integer (整数) |
%f | Floating point number (浮点数) |
%o | Object hyperlink (对象) |
%c | Style formatting (CSS样式) |
现代浏览器的console插件还支持css样式:
console.log('%cThis is red text on a green background', 'color:red; background-color:green');
这样在控制台就会输出 绿色背景 红色字体的 This is red text on a green background
2. console.dir
console.dir(obj:any[,options]:Object)
-
obj
- options
- options的参数:
- showHidden如果为true,则也会显示对象的不可枚举属性和符号属性。默认值:false
- depth告诉 util.inspect() 格式化对象时要递归多少次。这对于检查大型复杂对象很有用。要使其无限递归,可传入 null。默认值: 2。
- colors 如果为 true,则输出将使用 ANSI 颜色代码进行样式设置。颜色可定制,请参阅自定义 util.inspect() 颜色。默认值: false。
使用方法:
在obj上使用util.inspect()并将结果字符串打印到stdout。此函数绕过obj上定义的任何自定义inspect()函数。dog.bark =