Prefácio
De fato, o ponto simples da função de retorno de chamada é que, quando há duas funções A e B, quando A é passado para B como um parâmetro e executado em B, A é uma função de retorno de chamada. Se A é uma função anônima, é uma função de retorno de chamada anônima. Vamos usar um exemplo para explicar em detalhes como usar a função de retorno de chamada JavaScript.
Exemplo
Há muito tempo, havia um homem.
Var Pessoa;
Ele é um indivíduo, ou seja, um objeto.
pessoa = {}; // Em JavaScript, os aparelhos encaracolados representam um objetoEle tem um nome chamado Xiao Ming.
pessoa.name = 'xiao ming';
Vamos ver se é realmente chamado de Xiao Ming.
alerta (Person.name);
Bem, um dia, Xiao Ming pegou 10 yuan.
pessoa.Money = '10 yuan ';
Ele tinha que gastar dinheiro, então planejava gastar 10 yuan.
Xiao Ming tem uma maneira spendMoney ()
PERSON.SPENDMONEY = function () {alert (this.name +"usou" +this.money +"Comprei uma história em quadrinhos para RMB!"); }correr:
pessoa.SpendMoney ();
Um lembrete pop-up: Xiao Ming comprou uma história em quadrinhos para 10 Yuan.
Ok, a questão é: Xiao Ming tem que comprar quadrinhos se ele gastar dinheiro? Deve ser não.
O fato deve ser que ele tenha a palavra final sobre o que fazer com o dinheiro. Porque o dinheiro está no bolso de Xiao Ming.
Portanto, você pode usar a função de retorno de chamada.
A função de retorno de chamada em si é um tipo de dados.
No JavaScript, o status de uma função é o mesmo que String , int , boolean , etc. em java e pode ser considerado como um tipo de dados.
Como é um tipo de dados, é claro que ele pode ser passado como um parâmetro.
Então deve ser assim:
pessoa.SpendMoney = function (doSomething) {Dosomething (); }Colocar um suporte significa executar a função.
As funções sem colchetes são a mesma coisa que String e int .
é um tipo de dados.
Mesmo.
É isso que Java diz:
String str = "helloworld!";
No JavaScript, as funções são as mesmas.
var diz = function () {alert ('helloworld');} Neste momento, say um tipo de dados.
Como não há suportes, ele o executará somente depois dos colchetes!
O que Xiao Ming faz com Ten Yuan, ele tem a palavra final.
pessoa.SpendMoney (function () {});Isso é para passar a função.
O objetivo de passar uma função para spendMoney é deixar a função ser executada nela.
então:
pessoa.SpendMoney = function (doSomething) {Dosomething (); }Existem colchetes dentro, o que significa que a função deve ser executada.
O que fazer, decida por si mesmo.
Person.SpendMoney (function () {alert ('Vamos salvar o dinheiro!');});Resumir
Isso significa que você pode passar a função como um parâmetro em um método e pode executar essa função no método. Esta é a magia da função de retorno de chamada exclusiva do JS.
O exposto acima é sobre o uso das funções de retorno de chamada JavaScript. Espero que seja útil para estudar e trabalhar de todos. Se você tiver alguma dúvida, deixe uma mensagem para discutir.