Menu
CoddyTech

Errores y códigos de salida

Parte de la sección Conceptos básicos de Node.js del Journey de Node.js de Coddy. Lección 4 de 24.

Cuando un comando falla, el terminal y los scripts que llaman a tu programa necesitan saberlo.

Un programa tiene dos flujos de salida: stdout para los resultados y stderr para los errores, que se escriben con console.error. Cuando termina, devuelve un código de salida: 0 significa que funcionó; cualquier otro valor significa que falló. process.exit(1) detiene el programa inmediatamente con el 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);

El terminal junto a tu código muestra stderr en rojo e imprime el código de salida cuando no es 0.

challenge icon

Desafío

Fácil
  • Sin un comando, imprime Usage: node notes.js <command> [words] en stderr y termina con el código 1.
  • Un comando desconocido imprime Unknown command: <word> y después la línea de uso, ambos en stderr, y termina con 1.

Ejecuta node notes.js y después node notes.js remove 3.

Pruébalo tú mismo

// Tu herramienta de notas comienza aquí.
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 iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Conceptos básicos de Node.js