MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Creazione di schemi Mongoose con o senza la parola chiave "nuova"?

Entrambi sono validi e restituiscono una nuova istanza di Mongoose.Schema classe. Ciò significa che entrambi fanno esattamente lo stesso. Questa linea controlla se hai già un'istanza della classe Schema, in caso contrario, ne restituisce una per te.

Per riassumere, se chiami

var schema = new mongoose.Schema({})

inizializzi tu stesso un'istanza, mentre se chiami

var schema = mongoose.Schema({})

mangusta ne inizializza uno per te, con questo:

function Schema(obj, options) {
  if (!(this instanceof Schema)) {
    return new Schema(obj, options);
  }
  ...