枚举遍历指针
概述
前面已经讲过,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];