Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从mongodb打印查询时出现问题_Javascript_Json_Node.js_Mongodb_Express - Fatal编程技术网

Javascript 从mongodb打印查询时出现问题

Javascript 从mongodb打印查询时出现问题,javascript,json,node.js,mongodb,express,Javascript,Json,Node.js,Mongodb,Express,我试图了解更多关于node.js(express framework)和mongodb(官方驱动程序)的信息 我有这个密码 db.open(function(err,db){ if(!err){ console.log ('we are connected'); db.collection('post',function(err,collection){ collection.find(function(err,posts){

我试图了解更多关于node.js(express framework)和mongodb(官方驱动程序)的信息

我有这个密码

  db.open(function(err,db){
    if(!err){
      console.log ('we are connected');

      db.collection('post',function(err,collection){

        collection.find(function(err,posts){
          if(!err){
          res.json(posts);
          }
        });

     });

  }
 });
它应该查询数据库并打印结果。但我不知道如何将查询以json格式打印到浏览器中

我已经尝试了JSON.stringify,但没有任何结果:(

做:

    collection.find().toArray(function(err,posts){
      if(!err){
        res.json(posts);
      }
    });
(注意toArray函数)它可以工作,但我听说这是一种不好的做法,因为它会浪费大量内存


还有更有效的方法吗?

您也可以使用游标方法
.each()
.nextObject()
一次操作一个文档,而不必像
toArray()
那样将所有内容都放入内存数组中

此处的详细信息:

使用.each我可以控制台.log(posts),但不能使用res.send(posts)…如何使用each.function将所有post打印为json?