Em JavaScript, um callback é uma função que é passada como argumento para outra função e é executada após a finalização de uma operação assíncrona ou de um evento.
Um exemplo comum de uso de callbacks é com funções assíncronas como setTimeout, setInterval e fetch.
Aqui está um exemplo de uso do callback com a função setTimeout:
javascriptfunction sayHello() {
console.log("Hello!");
}
setTimeout(sayHello, 3000);Neste exemplo, a função sayHello é passada como argumento para a função setTimeout como um callback. A função setTimeout executará o callback após um atraso de 3 segundos (3000 milissegundos).
Outro exemplo comum é com a função fetch, que é usada para fazer requisições HTTP assíncronas e retorna uma Promise. Você pode passar uma função callback para lidar com a resposta da requisição:
javascriptfetch('https://api.example.com/data')
.then(response => response.json())
.then(data => {
// faz algo com os dados recebidos
})
.catch(error => {
console.error('Erro ao obter dados:', error);
});Neste exemplo, a função fetch retorna uma Promise que é tratada com then e catch. A função then retorna os dados da resposta como um objeto JSON, que é passado para a próxima função then como um argumento. Você pode passar uma função callback para essa função then para manipular os dados retornados. Se ocorrer um erro, a função catch será executada com o erro como argumento.
Em resumo, callbacks são uma forma comum de lidar com operações assíncronas em JavaScript. Eles permitem que você especifique uma função a ser executada após a conclusão de uma operação assíncrona ou de um evento