JavaScript function.caller Propiedad

La propiedad function.caller del objeto de función de JavaScript devuelve la función que invocó la función especificada. Devuelve nulo si la función «f» fue invocada por el código de nivel superior en JavaScript. Para funciones como funciones estrictas, funciones asíncronas y funciones de generador, este método devuelve nulo.

Sintaxis: 

function.caller

Parámetros: Esta función no acepta ningún parámetro.

Valor de retorno: esta función devuelve un valor nulo para los emisores de funciones estrictas, asincrónicas y generadoras.

A continuación se dan algunos ejemplos para una mejor comprensión de los métodos de función.

Ejemplo 1:

HTML

<!DOCTYPE html>
<html lang="en">
 
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content=
        "width=device-width,
        initial-scale=1.0">
</head>
 
<body>
    <script>
 
        // Creating func2
        function func2() {
            console.log("This is from function 2")
        }
        // Creating func1
        function func1() {
            func2();
        }
 
        // Call Function 1
        func1();
 
        // null is returned as function
        // is strict, async function and
        // generator function
        console.log("from function.caller: ",
                                func1.caller)
    </script>
</body>
 
</html>

Producción:

Ejemplo 2:

HTML

<!DOCTYPE html>
<html lang="en">
 
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content=
            "width=device-width,
            initial-scale=1.0">
</head>
 
<body>
    <script>
        function myFunc() {
            if (myFunc.caller == null)
                console.log("The function "
                    + "was called from the top!");
            else
                console.log("This function's "
                    + "caller was " + myFunc.caller);
    }
        myFunc()
    </script>
</body>
 
</html>

Producción:

Navegadores compatibles:

  • Google Chrome 1 y superior
  • Microsoft Edge 12 y superior
  • Mozilla Firefox 1 y superior
  • Internet Explorer 8 y superior
  • Safari 3 y superior
  • Ópera 9.6 y superior

Publicación traducida automáticamente

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