目录
● 控制台○ console.log([data], [...])
○ console.info([data], [...])
○ console.error([data], [...])
○ console.warn([data], [...])
○ console.dir(obj)
○ console.time(label)
○ console.timeEnd(label)
○ console.trace(message, [...])
○ console.assert(value, [message], [...])
控制台
稳定性:4 - API冻结
● 对象
用于向标准输出和标准错误输出打印。与大多数 web 浏览器提供的控制台对象函数类似,这里的输出也是发送给标准输出和标准错误输出。
当输出目标是终端或文件,控制台函数都是同步的(以防过早退出丢失信息);当目标是管道的时候,它是异步的(以防长时间的阻塞)。
因此,在下面的例子中,标准输出是非阻塞的同时标准错误输出是阻塞的。
1 $ node script.js 2> error.log | tee info.log
在日常的使用中,阻塞/非阻塞的区别并不是你应该担心的,除非你记录庞大的数据。
console.log([data], [...])
向标准输出另起一行打印。此函数可以使用 printf() 类似的方式带多个参数。例如:
1 console.log('count: %d', count);
如果第一个字符串参数不是格式化字符串,则 util.inspect 将应用到每个参数上。更多信息参看 util.format()。
// 实际上是,当遇到第一个不能传入格式化字符串的参数时,其及其后所有的参数,都用 util.inspect 转换成字符串,各参数之间用空格分隔。
// %d 为输出整数,%s 为输出字符串,%j 为输出 JSON 的字符串格式
console.info([data], [...])
与 console.log 相同。
console.error([data], [...])
与 console.log 相同,只是向标准错误输出打印。
console.warn([data], [...])
与 console.error 相同。
console.dir(obj)
对 obj 使用 util.inspect 并将结果字符串向标准输出打印。
console.time(label)
标记一个时间。
console.timeEnd(label)
结束一个定时器,记录输出。例子:
1 console.time('100-elements'); 2 for (var i = 0; i < 100; i++) { 3 ; 4 } 5 console.timeEnd('100-elements');
console.trace(message, [...])
打印格式化的信息和当前位置的堆栈信息到标准错误输出,以上输出紧跟在 'Trace: ' 后面。
console.assert(value, [message], [...])
类似 assert.ok(),但错误信息使用 util.format(message...) 格式化。