枚举遍历指针
概述
前面已经讲过,db.collection.find()如果没有指定给一个var声明的变量,将自动枚举前20条记录。
手动枚举指针
在mongo控制台中,将查询赋给一个var声明的变量,让其不自动枚举。
var cur = db.testData.find();
然后每次调用这个指针,将自动遍历20条
cur;
也可以使用指针的next()方法来获取下一条记录
var cur = db.testData.find();
while(cur.hasNext())
{
print(tojson(cur.next()));//此处打印操作可以用printjson来替换:printjson(cur.next());
}
可以用指针的forEach()方法来遍历指针数据:
var cur = db.testData.find();
cur.forEach(printjson);
枚举下标
在mongo控制台中,可以使用toArray()方法来访问指针结果。
var cur=db.testData.find();
var arr = cur.toArray();
var item = arr[2];
toArray()方法将加载所有查询结果到内存,这个方法将遍历完整个指针。
另外,一些驱动提供了直接使用数组下标的方式,这个方式是调用了toArray()的缩写。
var cur=db.testData.find();
var item = cur[3];
以上两句等同于cur.toArray()[3];
时间: 2024-11-03 21:01:00