Skip to content

NOTE

Bun fournit un objet [console](https://developer.mozilla.org/en-US/docs/Web/API/console) global compatible avec les navigateurs et Node.js. Cette page documente uniquement les API natives de Bun.

Profondeur d'inspection des objets

Bun vous permet de configurer la profondeur d'affichage des objets imbriqués dans la sortie de console.log() :

  • Option CLI : Utilisez --console-depth <number> pour définir la profondeur pour une exécution unique
  • Configuration : Définissez console.depth dans votre bunfig.toml pour une configuration persistante
  • Par défaut : Les objets sont inspectés à une profondeur de 2 niveaux
js
const nested = { a: { b: { c: { d: "deep" } } } };
console.log(nested);
// Par défaut (profondeur 2) : { a: { b: [Object] } }
// Avec profondeur 4 : { a: { b: { c: { d: 'deep' } } } }

L'option CLI a priorité sur le paramètre du fichier de configuration.


Lecture depuis stdin

Dans Bun, l'objet console peut être utilisé comme un AsyncIterable pour lire séquentiellement des lignes depuis process.stdin.

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

Ceci est utile pour implémenter des programmes interactifs, comme le calculateur d'addition suivant.

ts
console.log(`Additionnons des nombres !`);
console.write(`Compteur : 0\n> `);

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

Pour exécuter le fichier :

bash
bun adder.ts
Additionnons des nombres !
Compteur : 0
> 5
Compteur : 5
> 5
Compteur : 10
> 5
Compteur : 15

Bun édité par www.bunjs.com.cn