Hola chicos, a continuación, explicare que es lo que regresa el siguiente código y cuál es la razón de ese resultado:

 

var Foo = function( a ) {
    function bar() { // It is a local function with scope only within the Foo function.
        return a;     // Private function only available within the function it is.
    }
};
 
var f = new Foo( 7 ); // Invoking the function as a constructor. - create an object.
f.bar(); // TypeError: f.bar is not a function
 

Tenemos una declaración de una función de expresión la cual dentro tiene una función hija, así la cual solo trabaja en ámbito local pues solo está dentro del ámbito de la función Foo.

Si queremos mandarla llamar f.bar(); nos va a arrojar un TypeError ya que f.bar no se reconoce como función al no tener acceso al ámbito.

Resultado:
 
TypeError: f.bar is not a function

@telecristy.

¿Te gustó esta publicación? Márcala como favorita