穩(wěn)定性: 4 - 凍結(jié)
用于打印輸出字符到 stdout 和 stderr。和多數(shù)瀏覽器提供的 console 對象函數(shù)一樣,Node 也是輸出到 stdout 和 stderr。
當(dāng)輸出目標(biāo)是終端或文件的時(shí)候,console 函數(shù)是同步的(為了防止意外退出數(shù)據(jù)丟失),輸出是管道的時(shí)候是異步的(防止阻塞時(shí)間太長)。
下面的例子里,stdout 是非阻塞的,而 stderr 是阻塞的。
$ node script.js 2> error.log | tee info.log
平常使用過程中,不用考慮阻塞或非阻塞問題,除非有大批量的數(shù)據(jù)。
輸出到 stdout 并新起一行。和 printf()
類似,stdout 可以傳入多個(gè)參數(shù)。例如:
var count = 5;
console.log('count: %d', count);
// prints 'count: 5'
如果第一個(gè)字符里沒有找到格式化的元素, util.inspect
將會(huì)應(yīng)用到各個(gè)參數(shù),參見util.format()
參見 console.log
。
參見 console.log
,不同的是打印到 stderr。
參見 console.error
。
在 obj
使用 util.inspect
,并打印結(jié)果到 stdout,而這個(gè)函數(shù)繞過 inspect()
。options
參數(shù)可能傳入以下幾種:
showHidden
- 如果是true
,將會(huì)展示對象的非枚舉屬性,默認(rèn)是 false
。
depth
- inspect
對象遞歸的次數(shù),對于復(fù)雜對象的掃描非常有用。默認(rèn)是 2
。想要嚴(yán)格遞歸,傳入 null
。
colors
- 如果是 true
, 輸出會(huì)格式化為 ANSI 顏色代碼。默認(rèn)是 false
。顏色可以定制,下面會(huì)介紹。標(biāo)記一個(gè)時(shí)間點(diǎn)。
計(jì)時(shí)器結(jié)束的時(shí)候,記錄輸出,例如:
console.time('100-elements');
for (var i = 0; i < 100; i++) {
;
}
console.timeEnd('100-elements');
// prints 100-elements: 262ms
輸出當(dāng)前位置的棧跟蹤到 stderr 'Trace :'
。
和 assert.ok() 類似, 但是錯(cuò)誤的輸出格式為:
util.format(message...)
。