Prefacio
De hecho, el punto simple de la función de devolución de llamada es que cuando hay dos funciones A y B, cuando A se pasa a B como parámetro y se ejecuta en B, A es una función de devolución de llamada. Si A es una función anónima, es una función de devolución de llamada anónima. Usemos un ejemplo para explicar en detalle cómo usar la función de devolución de llamada JavaScript.
Ejemplo
Hace mucho tiempo, había un hombre.
persona var;
Es un individuo, es decir, un objeto.
persona = {}; // En JavaScript, los aparatos rizados representan un objetoTiene un nombre llamado Xiao Ming.
persona.name = 'Xiao Ming';
Veamos si realmente se llama Xiao Ming.
alerta (persona.name);
Bueno, un día, Xiao Ming recogió 10 yuanes.
persona.money = '10 yuan ';
Tuvo que gastar dinero, por lo que planeó gastar 10 yuanes.
Xiao Ming tiene una forma spendMoney ()
persona.spendMoney = function () {alert (this.name +"usado" +this.money +"Compré un cómic para RMB!"); }correr:
persona.spendMoney ();
Un recordatorio emergente: Xiao Ming compró un cómic para 10 yuanes.
De acuerdo, la pregunta es, ¿Xiao Ming tiene que comprar cómics si gasta dinero? Debe ser no.
El hecho debería ser que él tiene la última palabra sobre qué hacer con el dinero. Porque el dinero está en el bolsillo de Xiao Ming.
Entonces, puede usar la función de devolución de llamada.
La función de devolución de llamada en sí es un tipo de datos.
En JavaScript, el estado de una función es el mismo que String , int , boolean , etc. en Java, y puede considerarse como un tipo de datos.
Dado que es un tipo de datos, por supuesto, se puede pasar como un parámetro.
Entonces debería ser así:
persona.spendMoney = function (dosomething) {dosomething (); }Poner un soporte significa ejecutar la función.
Las funciones sin soportes son lo mismo que String e int .
es un tipo de datos.
Mismo.
Esto es lo que dice Java:
Cadena str = "Helloworld!";
En JavaScript, las funciones son las mismas.
var dice = function () {alert ('helloworld);} En este momento, say es un tipo de datos.
Debido a que no hay soportes, ¡lo ejecutará solo después de los soportes!
Lo que Xiao Ming hace con diez yuanes, tiene la última palabra.
persona.spendMoney (function () {});Esto es para pasar la función.
El propósito de transmitir una función al método spendMoney es dejar que la función se ejecute en ella.
entonces:
persona.spendMoney = function (dosomething) {dosomething (); }Hay soportes en el interior, lo que significa que la función se ejecutará.
Qué hacer, decide por ti mismo.
persona.spendMoney (function () {alert ('¡Guardemos el dinero!');});Resumir
Significa que puede pasar la función como un parámetro en un método, y puede ejecutar esta función en el método. Esta es la magia de la función de devolución de llamada única para JS.
Lo anterior se trata del uso de las funciones de devolución de llamada de JavaScript. Espero que sea útil para el estudio y el trabajo de todos. Si tiene alguna pregunta, deje un mensaje para discutir.