Deux concepts d'abord. Votre application est le Client , Mongodb est le serveur .
La principale différence est qu'avec .save()
vous avez déjà un objet dans votre code côté client ou avez dû récupérer les données du serveur avant de le réécrire, et vous réécrivez le tout.
Par contre .update()
n'est pas exiger que les données soient chargées sur le client à partir du serveur. Toutes les interactions se produisent côté serveur sans être récupérées par le client.Donc .update()
peut être très efficace de cette manière lorsque vous ajoutez du contenu à des documents existants.
En plus, il y a le multi
paramètre à .update()
qui permet d'effectuer les actions sur plusieurs documents correspondant à la condition de requête.
Il y a certaines choses dans les méthodes pratiques que vous perdez lorsque vous utilisez .update()
comme un appel, mais les avantages pour certaines opérations sont le "compromis" que vous devez supporter. Pour plus d'informations à ce sujet et sur les options disponibles, consultez la documentation.
En bref .save()
est une interface côté client, .update()
est côté serveur.