Skip to the content.

🐱 Node.js

🌟 Les diffĂ©rents modules core

Console

Le module console est celui que nous utilisons le plus (par le biais des mĂ©thodes console.log et console.error par exemple). Évidemment ici l’objectif est de simuler le plus possible le navigateur pour ne pas avoir Ă  gĂ©rer les sorties stdout et stderr directement nous-mĂȘmes par le biais de la variable process (ce qui peut ĂȘtre tout de mĂȘme intĂ©ressant, je vous invite Ă  aller voir la doc TTY pour y dĂ©couvrir des manipulations bien plus avancĂ©es de la sortie standard).

Bien souvent les dĂ©veloppeurs n’utilisent pas ÂŒ des mĂ©thodes prĂ©sentes dans le module et c’est plutĂŽt dommage. Prenez le temps d’explorer la documentation pour dĂ©couvrir les diffĂ©rentes mĂ©thodes et ce qu’elles vous permettent de faire.

Quelques exemples;

console.table([{ a: 1, b: 'Y' }, { a: 'Z', b: 2 }]);
// +---------+-----+-----+
// | (index) |  a  |  b  |
// +---------+-----+-----+
// |    0    |  1  | 'Y' |
// |    1    | 'Z' |  2  |
// +---------+-----+-----+

ConnaĂźtre (approximativement) le temps d’exĂ©cution d’un code avec console.time.

console.time('100-elements');
for (let i = 0; i < 100; i++) {}
console.timeEnd('100-elements'));
// prints 100-elements: 225.438ms

Il est possible de créer une nouvelle instance de Console avant un stdout et stderr personnalisé.

import fs from "node:fs";

const logger = new Console({
  stdout: fs.createWriteStream("./stdout.log"),
  stderr: fs.createWriteStream("./stderr.log")
});
logger.log("hello world!");

La crĂ©ation d’une nouvelle instance de Console avec des sorties personnalisĂ©es pour stdout et stderr peut ĂȘtre utile dans les cas oĂč vous souhaitez rediriger les sorties de console vers des fichiers de journalisation plutĂŽt que vers la console standard.

Cela peut ĂȘtre particuliĂšrement utile lorsque vous exĂ©cutez une application en production, car cela vous permet de stocker les messages de journalisation dans des fichiers, ce qui peut faciliter la surveillance et l’analyse ultĂ©rieure des problĂšmes.


âŹ…ïž 🐱 Node.js: 📊 Test unitaire et coverage | âžĄïž 🌟 Les diffĂ©rents modules core: Events