NodeJS中console.log和process.stdout.write的區別


兩種方法——**console.log** 和 **process.stdout.write**——都具有在控制檯上寫入或列印語句的基本定義。但是,它們執行這些任務的方式略有不同。在內部,**console.log** 實現 **process.stdout.write**,後者本身是一個緩衝流,用於直接在控制檯上列印語句。

process.stdout.write
console.log
它持續列印從流中檢索到的資訊,不新增任何換行符。
它首先列印正在檢索的資訊,然後新增一個換行符。然後它將繼續檢索第二組要列印的語句。
process.stdout.write方法只接受字串作為引數。傳遞其他資料型別將導致型別錯誤。
它可以接受任何型別的輸入引數。
如果我們不新增換行符,我們將得到一個奇怪的字元。
這裡不需要換行符,因為文字已格式化,字元也會自動消失。
它用於列印圖案,因為它不新增換行符。
當我們需要在列印語句後換行時使用它。
它不能一次列印多個字串。
例如,process.stdout.write("Hello", "World"); 將丟擲型別錯誤,因為它不再是字串。
我們可以使用此方法編寫多個字串。例如,console.log("Hello", "World"); 將在控制檯中列印 Hello World。
此方法無法關聯兩個字串型別。例如:
process.stdout.write("Hello %s", "All"); 將丟擲型別錯誤。
此方法可用於進行關聯。
例如,console.log("Hello %s", "All"); 將在控制檯中列印 Hello All。

process.stdout.write

示例 1

<script>
   // For process.stdout
   process.stdout.write("Hello");
   process.stdout.write("World");
   process.stdout.write("!!!");
</script>

輸出

HelloWorld!!!
console.log

示例 2

<script>
   // For process.stdout
   console.log("Hello");
   console("World");
   console.log("!!!");
</script>

輸出

Hello
World
!!!

更新於: 2021年4月27日

1K+ 次瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告