Particularly in the case you presented, they are pretty the same, a tiny advantage of object.create(ns.DocBase.prototype)
is that it does inherit only DocBase.prototype
without executing the constructor, so there are less space allocated than using new (_id and _content not allocated on the prototype of the objects).
Here's a graph to illustrate the difference (some parts are omitted):
notice the extra _id and _name in folder._prototype
.
the real bad practice in your example is that you re declared properties in prototype object:
ns.DocBase.prototype._id = null;
ns.DocBase.prototype._name = null;
an unnecessary step since you are are calling DocBase.call(this)
in the document (and folder) constructor.