Beide zijn geldig en retourneren een nieuwe instantie van het Mongoose.Schema
klas. Wat dit betekent is dat beide precies hetzelfde doen. Deze regel
controleert of u al een instantie van de Schema-klasse heeft, zo niet, dan retourneert deze er een voor u.
Om samen te vatten, als je belt
var schema = new mongoose.Schema({})
u initialiseert zelf een instantie, terwijl als u belt
var schema = mongoose.Schema({})
mangoest initialiseert er een voor je, hiermee:
function Schema(obj, options) {
if (!(this instanceof Schema)) {
return new Schema(obj, options);
}
...