Menu
CoddyTech

Erros e códigos de saída

Parte da seção Fundamentos de Node.js do Journey de Node.js da Coddy. Lição 4 de 24.

Quando um comando falha, o terminal e os scripts que chamam seu programa precisam saber.

Um programa tem dois fluxos de saída: stdout para resultados e stderr para erros, escrito com console.error. Quando termina, ele retorna um código de saída: 0 significa que funcionou; qualquer outro valor significa que falhou. process.exit(1) interrompe o programa imediatamente com o código 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);

O terminal ao lado do seu código mostra stderr em vermelho e exibe o código de saída quando ele não é 0.

challenge icon

Desafio

Fácil
  • Sem um comando, imprima Usage: node notes.js <command> [words] em stderr e saia com o código 1.
  • Um comando desconhecido imprime Unknown command: <word> e, em seguida, a linha de uso, ambos em stderr, e sai com 1.

Execute node notes.js e, em seguida, node notes.js remove 3.

Experimente você mesmo

// Sua ferramenta de anotações começa aqui.
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 iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos de Node.js