Menu
CoddyTech

Erreurs et codes de sortie

Fait partie de la section Les bases de Node.js du Journey Node.js de Coddy. Leçon 4 sur 24.

Lorsqu’une commande échoue, le terminal et les scripts qui appellent votre programme doivent le savoir.

Un programme possède deux flux de sortie : stdout pour les résultats et stderr pour les erreurs, écrites avec console.error. À la fin de son exécution, il renvoie un code de sortie : 0 signifie qu’il a fonctionné, toute autre valeur signifie qu’il a échoué. process.exit(1) arrête immédiatement le programme avec le code 1.

// node divide.js 6 0
const [a, b] = process.argv.slice(2).map(Number);
if (b === 0) {
    console.error('Cannot divide by zero');
    process.exit(1);
}
console.log(a / b);

Le terminal à côté de votre code affiche stderr en rouge et indique le code de sortie lorsqu’il n’est pas égal à 0.

challenge icon

Défi

Facile
  • Sans commande, afficher Usage: node notes.js <command> [words] sur stderr et quitter avec le code 1.
  • Une commande inconnue affiche Unknown command: <word>, puis la ligne d’utilisation, les deux sur stderr, et quitte avec 1.

Exécutez node notes.js, puis node notes.js remove 3.

Essayez vous-même

// Votre outil de prise de notes commence ici.
const [command, ...words] = process.argv.slice(2);
const text = words.join(' ');

if (command === 'add') {
    console.log(`Adding: ${text}`);
} else if (command === 'list') {
    console.log('No notes yet');
} else {
    console.log(`Unknown command: ${command}`);
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Les bases de Node.js