2

我正在尝试获取查询结果,但我在所有变量中都获得了相同的信息:db、collection 和 res:

var mongodb = require("mongodb");
var mongoserver = new mongodb.Server("localhost", 27017);
var instance = new mongodb.Db("test", mongoserver);

instance.open(function(err, db)
{
  console.log('db:');
  console.log(db);
  db.collection('kurtsoa', function(err, collection)
  {
    console.log('collection:');
    console.log(collection);
    collection.find({}, function(err, res)
    {
      console.log('res:');
      console.log(res);
    });
  });
});

我怎样才能得到“查找”的结果?

4

2 回答 2

21

.find()将返回一个Cursor对象供您使用。如果您感兴趣的只是将所有结果放在一个数组中,您可以这样做:

collection.find().toArray(function(err, docs) {
    console.log(docs);
});

但您也可以迭代游标:

collection.find().each(function(err, doc) {
    //called once for each doc returned
});
于 2013-01-25T13:01:46.013 回答
2

你可以使用这个:

 collection.find().toArray(function(err, docs){
                console.log(docs);
    )};
于 2013-01-25T12:55:39.507 回答