Difference between Object.create() and new SomeFunction()

The object used in Object.create actually forms the prototype of the new object, where as in the new Function() form the declared properties/functions do not form the prototype.

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.)

http://adripofjavascript.com/blog/drips/basic-inheritance-with-object-create.html

http://stackoverflow.com/questions/4166616/understanding-the-difference-between-object-create-and-new-somefunction