以下代码中有人能看到我做错了什么吗?我有一个包含100K文档的集合。我运行以下代码,forEach循环只迭代一次。尽管如此,当我在运行forEach之前计算文档数量时,我知道光标中有100K。
为什么forEach会运行一次然后退出?这是代码:
// connect to the database
conn = new Mongo();
db = conn.getDB("photosharing");
var isThere = null;
var orphans = 0;
var imageNumber = 0;
var numOfImages = 0
var cursor = db.images.find();
var cursorFound = cursor.count();
cursor.forEach(function(doc){
numOfImages=+1;
imageNumber = doc._id;
isThere = db.albums.find({images : imageNumber});
if(!isThere){
orphans=+1;
}
});
答案 0 :(得分:0)
试试这个
+=1
而不是
=+1
您的循环正在运行。您只是在每次运行时将输出重置为1。