Tecnología

Inicio

Las funciones de devolución de llamada de JavaScript: isFunction

En la programación Web, JavaScript se encuentra parte del paradigma de programación AJAX. AJAX significa Asynchronous JavaScript y XML. El aspecto "asíncrono" significa que ciertos procedimientos y solicitudes al servidor pueden suceder en segundo plano mientras se ejecuta el código. La clave para utilizar esta funcionalidad está tomando ventaja de las funciones de "devolución de llamada", que representan las funciones que se comportan como objetos. A su vez, con el fin de asegurar que estos objetos se utilizan correctamente, la función "isFunction" puede asegurarse de que se utilizan los objetos de función que se les exija.

Funciones de JavaScript

funciones de JavaScript, a primera vista, parecen comportarse como otras funciones en cualquier otro lenguaje de programación C-estilo. El nombre de un bloque de código, toman argumentos, y de vez en cuando volver algún tipo de salida. La imagen típica de una función en la programación informática no está lejos de la de JavaScript de, aunque a diferencia de algunos idiomas, funciones de JavaScript no tienen que devolver los tipos de datos de forma explícita.

Las funciones son objetos

Una diferencia entre las funciones de JavaScript y funciones en otros idiomas, sin embargo, es que las funciones de JavaScript son también objetos. En concreto, las funciones de JavaScript son objetos de tipo "Función", y se comportan como otros objetos. Por ejemplo, ambos de los siguientes ejemplos de código declaran la misma función. Sin embargo, uno lo hace a través de declaración de la función tradicional, mientras que el otro lo hace por la que se declara una variable que contiene un objeto función:

/ Método de un /
función mi_func (Q1) {
volver var1;
}

/ Método de dos /
var mi_func = new Function ( "$ var1", "retorno var1");

Objetos función como argumentos

La clave para utilizar las funciones de devolución de llamada es entender que si las funciones funcionan como objetos en JavaScript, a continuación, el programador puede pasarlas a funciones como argumentos. Entonces, la función con la función de devolución puede llamar a esa función como parte de su definición. Así, por ejemplo, el programador puede pasar una función a un argumento, y cuando esa función de devolución de llamada comienza a trabajar, otras partes del programa puede continuar ejecutando. Esto se conoce como programación "asíncrono", lo que significa que las funciones que recuperan datos desde el servidor pueden ejecutarse en segundo plano sin detener la ejecución del resto de la página Web.

Función isFunction

En relación con esto, la función "isFunction" comprueba un objeto de determinar si se trata de un objeto función. Esto puede ser extremadamente útil para determinar si o no un argumento pasado a una función es, de hecho, un objeto de función y por lo tanto se puede utilizar como un objeto. El uso de la función "isFunction" es sencillo, como se ilustra en el siguiente ejemplo:

la función func (var1, devolución de llamada) {

document.write (isFunction (Q1)); // No una función
document.write (isFunction (func)); // Es una función
document.write (isFunction (devolución de llamada)); // Debe ser una función