我们都使用console 工具有些年头了(谢谢Firebug),但是我们大多数人都只使用一些基本功能,如console.log()或console.error()。
然而,console API真的很强大,它提供了很多非常有趣的特性。
要铭记于心的是,console API并不是标准,也不会标准化。绝对无法保证这些特性将是可用的,你不应该在生产环境上使用console
字符串替换
console.log()和其他打印消息的方法(info、warn和error)都支持字符串替换(就像C语言中的printf函数)。
你可以这样使用:
1 2 |
console.log('User %s has %d items', 'John', 5); >> "User John has 5 items" |
通常在字符串连接时很有用,避免“+”带来的痛苦和防止引号或双引号的错误。
1 2 |
var example = " This -> ' and this -> '"; console.log('Here is my string "%s"', example); >> "Here is my string " This -> ' and this -> '"" |
目前支持的标识符有:
%s 字符串: IE, Chrome, Firefox
%d or %i 整数: IE, Chrome, Firefox
%f 浮点值 : IE, Chrome, Firefox
%o Javascript 对象 : IE, Chrome, Firefox
对象将很好地打印或显示链接。
DOM对象也会被处理。
%c 对以下的文本应用CSS样式. Chrome, Firefox
例:
1 2 |
console.log(‘There are now %c%d%c listeners’, ‘font-weight: bold;’, 2, ‘font-weight: normal;’); There are now 2 listeners |
%b 二进制值: IE
%x 十六进制值: IE
分组信息
消息可以通过console.group()、console.groupCollapsed()和console.groupEnd()进行分组。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
console.group('First group'); console.log('a'); console.log('b'); console.log('c'); console.groupEnd(); console.group('Second group'); console.log('1'); console.log('2'); console.log('3'); console.group('Embeded subgroup'); console.log('α'); console.log('β'); console.log('γ'); console.groupEnd(); // For the "Embeded subgroup" console.groupEnd(); // For the "Second group" |
1 2 3 4 5 |
console.groupCollapsed('Pre-collapsed to save your eyes'); console.log('Never Gonna %s', 'Give You Up'); console.log('Never Gonna %s', 'Get you down !'); console.info('This is a potato'); console.groupEnd(); |
度量与分析
他们都需要一个标签作为参数,这样你就可以同时启动多个定时器(文档说最多支持10000个),并且知道哪一个是你想要停止的。
我们都使用console 工具有些年头了(谢谢Firebug),但是我们大多数人都只使用一些基本功能,如console.log()或console.error()。
然而,console API真的很强大,它提供了很多非常有趣的特性。
要铭记于心的是,console API并不是标准,也不会标准化。绝对无法保证这些特性将是可用的,你不应该在生产环境上使用console
字符串替换
console.log()和其他打印消息的方法(info、warn和error)都支持字符串替换(就像C语言中的printf函数)。
你可以这样使用:
1 2 |
console.log('User %s has %d items', 'John', 5); >> "User John has 5 items" |
通常在字符串连接时很有用,避免“+”带来的痛苦和防止引号或双引号的错误。
1 2 |
var example = " This -> ' and this -> '"; console.log('Here is my string "%s"', example); >> "Here is my string " This -> ' and this -> '"" |
目前支持的标识符有:
%s 字符串: IE, Chrome, Firefox
%d or %i 整数: IE, Chrome, Firefox
%f 浮点值 : IE, Chrome, Firefox
%o Javascript 对象 : IE, Chrome, Firefox
对象将很好地打印或显示链接。
DOM对象也会被处理。
%c 对以下的文本应用CSS样式. Chrome, Firefox
例:
1 2 |
console.log(‘There are now %c%d%c listeners’, ‘font-weight: bold;’, 2, ‘font-weight: normal;’); There are now 2 listeners |
%b 二进制值: IE
%x 十六进制值: IE
分组信息
消息可以通过console.group()、console.groupCollapsed()和console.groupEnd()进行分组。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
console.group('First group'); console.log('a'); console.log('b'); console.log('c'); console.groupEnd(); console.group('Second group'); console.log('1'); console.log('2'); console.log('3'); console.group('Embeded subgroup'); console.log('α'); console.log('β'); console.log('γ'); console.groupEnd(); // For the "Embeded subgroup" console.groupEnd(); // For the "Second group" |
1 2 3 4 5 |
console.groupCollapsed('Pre-collapsed to save your eyes'); console.log('Never Gonna %s', 'Give You Up'); console.log('Never Gonna %s', 'Get you down !'); console.info('This is a potato'); console.groupEnd(); |
度量与分析
他们都需要一个标签作为参数,这样你就可以同时启动多个定时器(文档说最多支持10000个),并且知道哪一个是你想要停止的。