Why is it that I can't create an object from a function defined in a closure?
var outer = function() {
var constructor = function() {
this.foo = 1;
};
return constructor;
};
// Should be: { foo: 1 }, but is: undefined
var constructorObject = new outer()();
// This works
var c = outer();
var constructorObject = new c();
innerfunction doesn't return anything.var ctxt = {}; new outer().call(ctxt); console.log(ctxt.foo);