如何获取json对象的数组而不是mongoose文档

当我find如下操作时:

Collection.find({name: 'Erik'}, function (err, docs) { // do momething }); 

'docs'variables填充了全functionmongoose文档的数组。 但是我需要获得一个纯JSON对象的数组。

我知道我可以通过forEach循环访问'docs'数组,并使用.toJSON()方法获取对象。 mongoose支持我感兴趣的function吗?

如果您使用的是Mongoose 3.x,则可以使用lean查询选项来执行此操作:

 Collection.find({name: 'Erik'}).lean().exec(function (err, docs) { // docs are plain javascript objects instead of model instances }); 
 .exec(function(err, docs){ docs= docs.map(o => o.toObject()); 

这将包括虚拟获得者