node.js - Mongoose 中的 Model.findOne() 和 Model.findById() 有什么区别?

标签 node.js mongodb mongoose objectid

假设我们正在根据 _id 值从 MongoDB 中搜索文档。下面哪一个代码是高效的?

  1. ModelObj.findById(IdValue).exec(callback);

  2. ModelObj.findOne({ '_id': IdValue}).exec(callback);

我觉得 ModelObj.findById() 是高效的,但是支持的原因是什么或者它的效率如何?

最佳答案

findById 只是一个便利函数,它与您显示的 findOne 调用完全相同。

这里是 the source :

Model.findById = function findById (id, fields, options, callback) {
  return this.findOne({ _id: id }, fields, options, callback);
};

关于node.js - Mongoose 中的 Model.findOne() 和 Model.findById() 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14255603/

相关文章:

node.js - Mongoose 异步请求管理

node.js - Mongoose-如何创建具有默认值的集合?

javascript - 带 Promises 的递归意味着注册的回调被调用多次

mysql - 使用 mysql/nodejs 返回更新的行

mongodb - 如何检查集合是否存在 MongoDB Golang

node.js - MongoDB/Mongoose 索引使查询更快还是变慢?

mongodb - Mongoose 说我有 46 条记录,mongoDB 说我有 0 条记录?

带有 V8 的 Node.js 适用于内存有限的设备?

javascript - 使用 node-soap 在 Node.js 中通过 Soap 发送参数

mongodb - 使用 for 循环插入文档时出错