我可以使用:
遍历游标的所有元素(最多返回数字)cursor.each(function(err, doc)
但是我如何从光标中获取第一个元素?
答案 0 :(得分:8)
如果您只想要结果的第一个文档,那么调用toArray
非常低效。而是在光标上调用next
:
cursor.next(function(err, doc) {
if (doc) {
...
}
});
另一个选择是,如果您只想要一个文档,只需拨打findOne
而不是find
。
答案 1 :(得分:1)
您可以将光标转换为数组。 试试这个
cursor.toArray(function(err,result){
if(result)
{
//result[0] will give you first element from cursor
}
})
答案 2 :(得分:1)
您可以使用toArrray()
。
var arrayDoc = cursor.toArray();
arrayDoc[0]; //first element from cursor
或
arrayDoc = cursor.limit(1).toArray(); //limiting to one
答案 3 :(得分:-1)
您可以使用:
cursor.fetch()[0];
fetch将返回游标的所有对象文档。 的问候,