我正在尝试遍历数组并将数组中的项目添加到 mongodb 数据库(如果它不存在)。在循环内部,如果数组中的下一个元素已经在数据库中,我会尝试查询我的数据库。但是在回调函数中,console.log 总是返回数组的最后一个元素。
for(var j = 0 ; j < req.body.array.length; j++ ){
var currenttag = req.body.array[j];
Tag.findOne({tagname : currenttag},
function(err,tag){
if(tag){
console.log("tag exists");
}
else{
console.log(currenttag);//returns the last tag in the array for array.length times
var newtag = new Tag({tagname : currenttag});
newtag.save();
}
});
}