> Cant you just "return this;" to avoid using "new"?
THIS will be the global scope if a function meant to be a constructor is called without new.
Try that in your console
function Foo(){this.foo = "bar";return this}
then do : Foo() ;
it will return window;so the answer is no.