我可以使用以下命令遍历游标的所有元素(直到返回的数字):
cursor.each(function(err, doc)
但是如何从光标中获取第一个元素呢?
trnvg8h31#
如果您只想要结果的第一个文档,那么调用toArray非常低效。相反,在游标上调用next:
toArray
next
cursor.next(function(err, doc) { if (doc) { ... } });
另一种选择是,如果您只需要一个文档,则只调用findOne而不是find。
findOne
find
kqlmhetl2#
你可以把你得到的游标转换成数组。试试这个
cursor.toArray(function(err,result){ if(result) { //result[0] will give you first element from cursor } })
3df52oht3#
const firstItem = cursor.next();
只需在光标上调用next()。这将使光标前进到第一个元素。
next()
xeufq47z4#
可以使用toArrray()。
toArrray()
var arrayDoc = cursor.toArray(); arrayDoc[0]; //first element from cursor
或
arrayDoc = cursor.limit(1).toArray(); //limiting to one
vaqhlq815#
您可以用途:
cursor.fetch()[0];
fetch将返回光标的所有对象文档。致上,
5条答案
按热度按时间trnvg8h31#
如果您只想要结果的第一个文档,那么调用
toArray
非常低效。相反,在游标上调用next
:另一种选择是,如果您只需要一个文档,则只调用
findOne
而不是find
。kqlmhetl2#
你可以把你得到的游标转换成数组。试试这个
3df52oht3#
只需在光标上调用
next()
。这将使光标前进到第一个元素。xeufq47z4#
可以使用
toArrray()
。或
vaqhlq815#
您可以用途:
fetch将返回光标的所有对象文档。致上,