Det är inte väldokumenterat, men cursor.each
ger en null
värde till den andra parametern i dess callback för att indikera att markören inte har fler tillgängliga dokument. Det nämns bara i exemplet med dokumentationen .
Så i ditt fall bör du leta efter user !== null
i din users.each
återuppringning.
Det skulle dock vara mer effektivt att låta mongo göra sökningen åt dig genom att ändra din find
ring till:
collection.findOne({email: email}, {}, function(err, user) {
if (user) {
// email was found case
...
}
...
}