執行環境套件管理器打包器測試執行器程式碼檢查格式化指南參考部落格意見回饋

console

Bun 中的 console 物件


物件檢查深度

你可以設定 console.log() 列印巢狀物件的深度:

  • 命令列標誌:使用 --console-depth <number> 設定單次執行的深度
  • 設定:在 bunfig.toml 中設定 console.depth,使其在多次執行中保持生效
  • 預設值:Bun 檢查物件的深度為 2 層
JavaScript
const nested = { a: { b: { c: { d: "deep" } } } };
console.log(nested);
// 預設(深度 2):{ a: { b: { c: [Object ...] } } }
// 深度為 4 時:{ a: { b: { c: { d: 'deep' } } } }

命令列引數優先於設定檔設定。


從標準輸入讀取

在 Bun 中,console 物件也是一個 AsyncIterable,可以逐行讀取 process.stdin。

adder.ts
for await (const line of console) {
  console.log(line);
}

你可以使用它來編寫互動式程式,例如下面的加法計算器。

adder.ts
console.log(`讓我們加一些數字吧!`);
console.write(`計數:0\n> `);

let count = 0;
for await (const line of console) {
  count += Number(line);
  console.write(`計數:${count}\n> `);
}

執行該檔案:

terminal
bun adder.ts
讓我們加一些數字吧!
計數:0
> 5
計數:5
> 5
計數:10
> 5
計數:15