Very simply said, new X
is Object.create(X.prototype)
with additionally running the constructor
function. (And giving the constructor
the chance to return
the actual object that should be the result of the expression instead of this
.)
Thatโs it. ๐
The rest of the answers are just confusing, because apparently nobody else reads the definition of new either. ๐