¿Cómo obtener el nombre de la función actualmente en ejecución usando JavaScript?

Dada una función y la tarea es obtener el nombre de la función que se está ejecutando actualmente usando JavaScript.

  • Enfoque 1: usar el método arguments.callee: se refiere a la función que se está ejecutando actualmente dentro del cuerpo de esa función. En este método, usamos arguments.callee para referirnos al nombre de la función. Así que definimos una nueva variable como arguments.callee.toString() . Luego usamos (variable_name).substr para obtener la función y luego la mostramos como una alerta.

    Sintaxis:

    arguments.callee.toString()

    Sin embargo, es posible que deba analizar el nombre, ya que probablemente incluirá algo de basura adicional.

    Ejemplo 1: Este ejemplo muestra la función que se está ejecutando actualmente usando el método arguments.callee .

    <!DOCTYPE HTML>
    <html> 
      
    <head> 
        <title> 
            How to get currently running
            function name using JavaScript ?
        </title> 
    </head> 
          
    <body style = "text-align:center;"
                  
        <h1 style = "color:green;"
            GeeksForGeeks 
        </h1> 
              
        <script> 
            function GFGs() {
                var me = arguments.callee.toString();
                me = me.substr('function '.length);     
                me = me.substr(0, me.indexOf('('));     
                alert(me);
            }
            GFGs();         
        </script> 
    </body> 
      
    </html>

    Producción:

  • Enfoque 2: con la ayuda del método console.log , definimos una nueva función que devuelve el nombre de la función y la llamamos función actual.

    Sintaxis:

    function getFuncName() {
        return getFuncName.caller.name
    }
    function teddy() { 
        console.log(getFuncName())
    }
    teddy()

    Ejemplo 2: Este ejemplo muestra la función que se está ejecutando actualmente usando el método console.log .

    <!DOCTYPE html>
    <html> 
      
    <head>
        <title> 
            How to get currently running
            function name using JavaScript ?
        </title> 
    </head> 
          
    <body style = "text-align:center;"
                  
        <h1 style = "color:green;"
            GeeksForGeeks 
        </h1> 
              
        <script> 
            function getFuncName() {
                return getFuncName.caller.name
            }
              
            function teddy() { 
                console.log(getFuncName())
            }
            teddy()     
        </script> 
    </body> 
      
    </html>

    Producción:

Publicación traducida automáticamente

Artículo escrito por harshcooldude700 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 *