.update()
和.findAndModify()
都有各自的文档可供查看,这是.findOneAndUpdate()
的根方法.
但主要的不同之处在于:
update():用于对集合中与其查询条件匹配的"一个或多个"文档执行原子更新操作.它返回响应中修改的文档数.
findOneAndUpdate():既用于处理"单一"文档的UPDATE语句,也用于检索该"单一"文档的内容.返回的状态取决于传递给操作的"new"选项的值.其中true
返回"修改的"文档.其中false
在任何修改之前返回"原始"文档.后一种形式是默认选项.
总之.一种是"批量"修改,不担心结果中的文档内容.另一种是修改单个文档,并在结果中返回文档内容.
这就是不同之处.