Eh bien, il y a la documentation respective à afficher pour les deux .update()
et .findAndModify()
qui est la méthode racine de .findOneAndUpdate()
ici.
Mais dans les principales différences il y a :
-
mettre à jour() :est destiné à effectuer une opération de mise à jour atomique sur "un ou plusieurs" documents correspondant à sa condition de requête dans une collection. Il renvoie le nombre de documents modifiés dans sa réponse.
-
findOneAndUpdate() :a pour but à la fois de traiter une instruction de mise à jour sur un document "singulier", ainsi que de récupérer le contenu de ce document "singulier". L'état renvoyé dépend de la valeur de l'option "new" transmise à l'opération. Où
true
le document "modifié" est retourné. Oùfalse
le document "original" est restitué avant toute modification. Ce dernier formulaire est l'option par défaut.
Bref. L'un est destiné à modifier "en masse" et à ne pas se soucier du contenu du document en résultat. Et l'autre est destiné à modifier un document singulier et à renvoyer le contenu du document dans le résultat.
C'est la différence.