Als Antwort auf Ihren letzten Kommentar.
Sie haben Recht, dass null ein Werttyp ist, aber Nulltypen sind eine Möglichkeit, dem Interpreter mitzuteilen, dass er keinen Wert hat . Daher müssen Sie die Werte auf einen beliebigen Nicht-Nullwert festlegen, oder Sie erhalten den Fehler. Setzen Sie diese Werte in Ihrem Fall auf leere Zeichenfolgen. d.h.
var newUser = new user({
/* We will set the username, email and password field to null because they will be set later. */
username: '',
passwordHash: '',
email: '',
admin: false
}, { _id: false });