Função Callback
Uma função callback é uma função passada a outra função como argumento, que é então invocado dentro da função externa para completar algum tipo de rotina ou ação.
Aqui está um pequeno exemplo:
function greeting(name) {
alert('Hello ' + name);
}
function processUserInput(callback) {
var name = prompt('Please enter your name.');
callback(name);
}
processUserInput(greeting);
O exemplo acima é de um synchronous callback, como é executado imediatamente.
Note, no entanto, que callbacks são normalmente utilizados para continuar a execução do código após uma operação asynchronous ser terminada — essas são chamadas asynchronous callbacks. Por exemplo, nosso simples exemplo maps-example.html (veja uma versão "live" aqui) usa o Google Maps API e a API de geolocalização para mostrar em um mapa a localização atual do nosso dispositivo.
Como obter as coordenadas atuais do nosso GPS é uma ação assíncrona (nós não sabemos exatamente quando os dados serão retornados), o método Geolocation.getCurrentPosition()
pega um função callback anônima como um parametro, que pega os dados retornados da coordenada como parâmetro. Essa função só é executada quando os dados da coordenada são retornados.
Aprenda mais
Conhecimento geral
- Callback no Wikipedia