Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
6
respuestas

Duda función verificar

No comprendí la parte en donde le hace el llamado a la función verificar pero sin paréntesis, siempre he entendido que toda función lleva sus paréntesis, al igual que si llamo a una función lleva sus paréntesis.

6 respuestas

En Javascript hay un concepto llamado 'callback' que se refiere a que un argumento es del tipo funcion (function) y que ese argumento se usará como una función dentro de otra, por lo tanto en lugar de llamar a la funcion directamente, le pasamos el nombre de la función a otra funcion para que el sepa llamarla.

Ejemplo:

// using callbacks to do a calculator

// sum function
function sum(a,b)
// product function
function product(a,b)
{
    return a*b;
}

// function to call opertion with two numbers
function opertion(a,b,fun)
{
    return fun(a,b);
}

// call the function
console.log(opertion(2,3,sum));
console.log(opertion(2,3,product));

Gracias Alexis por responder, entendí tu punto, pero en el caso del video explicativo indica lo siguiente:

button.onclick = verificar;

Esto sería también un callback?

Si, piensa que estás asignando una variable (propiedad del elemento button) cuyo valor es un identificador (referencia a la) de la funcion y que esa variable se usa despues para llamar a la funcion como:

onclick(evento)

Hola Jhuleidy, cuando escribes una función sin parentesis, en realidad, no estás llamando a la función. Una función sin parentesis es una referencia a la función. En el ejemplo, button.onclick = verificar;. Se escribe la función verificar sin parentesis, porque no se quiere que se ejecute por sí misma en ese punto, sino que se ejecute cuando ocurra el evento onclick . Un pequeño ejemplo abajo. Un saludo

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

Vale muchas gracias por sus aclaratorias.

Entendido! :D