Em JavaScript, os programadores podem definir unidades de código, incluindo variáveis e funções. As funções JavaScript também podem receber parâmetros, com o código chamando uma função passando esses parâmetros como variáveis ou valores. Também é possível passar uma referência a outra função como parâmetro. Uma função de retorno de chamada é tipicamente aquela que é chamada quando outra função termina de ser executada. Por esse motivo, as funções de retorno de chamada geralmente aparecem como parâmetros para outras funções.
Definição de retorno de chamada
Para implementar uma função de retorno de chamada, o código JavaScript em uma página deve primeiro definir a função. O código de exemplo a seguir define uma função e armazena uma referência de variável a ela: var callbackDefinition = function (numParam) {alert (numParam); };
A função usa um parâmetro numérico para demonstração. A função de retorno de chamada pode conter qualquer código JavaScript que uma função padrão possa incluir. O código agora poderá passar uma referência à função como parâmetro para outra função, usando o nome da variável.
Parâmetro de retorno de chamada
Uma vez que um script tem uma função definida como variável, ele pode passar essa variável como parâmetro para outra função. O código de exemplo a seguir demonstra a técnica: mainFunction (10, callbackDefinition);
Este código chama uma função nomeada, passando um parâmetro de número e o nome da variável que armazena o código da função de retorno de chamada. O esboço da função que está sendo chamada aqui deve corresponder a esses dois parâmetros. A função que recebe a variável de retorno de chamada será capaz de chamar a função que armazena.
Execução de Função
Depois de passada para a função principal, uma função de retorno de chamada pode ser executada. O código de exemplo a seguir demonstra: function mainFunction (myNum, callbackFn) {alert (myNum); callbackFn (myNum * 2); }
Para demonstração, este código primeiro gera um alerta JavaScript que fará com que uma caixa de diálogo apareça no navegador do usuário. Depois que esse código é executado, a função chama a função de retorno de chamada usando o nome especificado como parâmetro. A chamada da função de retorno de chamada inclui um parâmetro numérico, que é esperado pela função que foi inicialmente definida como uma variável.
Chamada de Função
Depois que uma página tem uma função definida, incluindo um retorno de chamada, ela pode executar esse código. Freqüentemente, os desenvolvedores instruem o navegador a ouvir um evento do usuário, executando funções quando isso ocorre. Por exemplo, o seguinte código HTML chama uma função: Esta é uma seção que pode ser clicada
Se a função especificada como parâmetro contém a definição da variável de retorno de chamada e a chamada para a função principal, isso criará o efeito de retorno de chamada, como segue: function doCallback () {var callFn = function (numParam) {alert (numParam); }; mainFunction (10, callFn); }
Depois que a função principal executa seu próprio conteúdo de código, ela chama a função de retorno de chamada.