这是我的代码
mongoose.connection.on('open', function(err, doc){
console.log("connection established");
//**Array Method**
mongoose.connection.db.collection('simple', function(err, doc){
if(err){
console.log("ERROR", err);
}else{
doc.find().toArray(function(err, arr){
console.log("Arr Method", arr);
})
}
})
//**Cursor Method**
mongoose.connection.db.collection('simple', function(err, doc){
if(err){
console.log("ERROR", err);
}else{
var cur = doc.find();
cur.each(function(err, doc){
console.log("Cursor item", doc);
})
}
})
})
数组方法的输出
Arr Method
[ { _id: 5209340204db66186f93043d, name: 'SUR' },
{ _id: 5209341f04db66186f93043e, name: 'SAT' },
{ _id: 520935c004db66186f93043f, name: 'THI' },
{ _id: 52093b3504db66186f930440, name: 'popo' },
{ _id: 52093cef04db66186f930441, name: 'rorb' } ]
游标方法的输出
Cursor item { _id: 5209340204db66186f93043d, name: 'SUR' }
Cursor item { _id: 5209341f04db66186f93043e, name: 'SAT' }
Cursor item { _id: 520935c004db66186f93043f, name: 'THI' }
Cursor item { _id: 52093b3504db66186f930440, name: 'popo' }
Cursor item { _id: 52093cef04db66186f930441, name: 'rorb' }
Cursor item null
我有两个问题。
- 为什么游标方法中有一个额外的 log("
Cursor item null
")。 - 如果我将我的代码(
Array method and Cursor method
)移出连接打开回调,则不会打印任何内容。为什么 ?