What are the exact circumstances for which a return statement in Javascript can return a value other than this when a constructor is invoked using
return
this
When you are using the new keyword, an object is created. Then the function is called to initialise the object.
new
There is nothing that the function can do to prevent the object being created, as that is done before the function is called.