Iniciante Fundamentos
Callbacks
Um callback é uma função passada como argumento para outra função, para ser executada depois que uma tarefa terminar. É a base da programação assíncrona no Node.js.
Exemplo simples
function processar(valor, callback) {
const resultado = valor * 2;
callback(resultado);
}
processar(5, (res) => {
console.log(res); // 10
});
Error-first callback
No Node.js existe uma convenção: o primeiro parâmetro do callback é o erro. Se não houver erro, ele vem como null.
const fs = require("fs");
fs.readFile("dados.txt", "utf8", (erro, conteudo) => {
if (erro) {
console.error("Deu erro:", erro.message);
return;
}
console.log(conteudo);
});
Por que verificar o erro primeiro
Sempre trate o erro antes de usar o resultado. Ignorar o erro pode causar falhas difíceis de encontrar.
Callback hell
Muitos callbacks aninhados deixam o código confuso. Por isso surgiram as Promises e o async/await, que veremos a seguir.
ler(a, () => {
ler(b, () => {
ler(c, () => {
// difícil de ler
});
});
});