Pasar una función como parámetro en JavaScript

Pasar una función como argumento a la función es bastante similar a pasar una variable como argumento a la función. por lo que las variables pueden ser devueltas desde una función. Los siguientes ejemplos describen cómo pasar una función como parámetro a otra función. 

Ejemplo 1: este ejemplo pasa una función geeks_inner a la función geeks_outer como argumento. 

html

<!DOCTYPE html>
<html>
    <head>
        <title>
            JavaScript | Pass a function as parameter
        </title>
    </head>
     
    <body style = "text-align:center;">
         
        <h1 style = "color:green;" >
            GeeksForGeeks
        </h1>
         
        <p>
            Passing function as arguments.
        </p>
         
        <!-- Function call after clicking the button -->
        <button onclick = "geeks_outer(geeks_inner)">
            Click Here
        </button>    
         
        <script>
            function geeks_inner(value){
                return 'hello User!';
            }
            function geeks_outer(func){
                alert(func());
            }
        </script>
    </body>
</html>                   

Producción:

  • Antes de hacer clic en el botón:
  • Después de hacer clic en el botón:

Ejemplo 2: Este ejemplo pasa una función geeks_inner junto con un argumento ‘¡Geeks!’ a la función geeks_outer como argumento. 

html

<!DOCTYPE html>
<html>
    <head>
        <title>
            JavaScript | Pass a function as parameter
        </title>
    </head>    
     
    <body style = "text-align:center;">
         
        <h1 style = "color:green;" >
            GeeksForGeeks
        </h1>
     
        <p>
            Passing function as arguments.
        </p>            
         
        <button onclick = "geeks_outer('Geeks!', geeks_inner)">
            Click Here
        </button>        
         
        <!-- Script to uses function call using
            function as argument -->
        <script>
            function geeks_inner(value){
                return 'hello '+value;
            }
            function geeks_outer(a, func){
                alert(func(a));
        }        
        </script>
    </body>
</html>                   

Producción:

  • Antes de hacer clic en el botón:
  • Después de hacer clic en el botón:

 

Ejemplo 3: Aquí, en este ejemplo, la función más pequeña se pasa como argumento en la función sayHello . así que aquí en realidad estamos pasando una dirección de función más pequeña a la función sayHello.

Javascript

function sayHello(param){
   console.log("hello",param);
   param();
   return "Hiii Geeks for Geeks"
 }
  
 //function address
   function smaller(){
   console.log("Is everything alright")
   }
    
   //function call
  const returnHello= sayHello(smaller)
  console.log(returnHello)

 

Publicación traducida automáticamente

Artículo escrito por PranchalKatiyar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *