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 ) {
    this.baz = function() { // Is added as a property to the "this" object.  
        return a;  // It will be included in the object created when you do f = new Foo(7).
    };
};
 
var f = new Foo( 7 ); // Invoking the function as a constructor. - create an object.
f.baz();
 

Si bien tenemos la declaración de la función padre como una expresión var Foo = function( a ) {}, dentro de la función padre tenemos una función hija que está siendo agregada como propiedad lo que hace que podemos acceder a ella desde afuera cuando invocamos la función con la palabra reservada “new”.

Lo que estamos haciendo aquí var f = new Foo(7); es invocar la función como constructor, creando un objeto, y como this.baz = function() { return a; }; es parte de ese objeto (this) entonces podemos acceder a ella.

Resultado:
// 7


@telecristy.

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