Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.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 如何使用NodeJS从MongoDb获取JSONObject表单中的结果_Javascript_Node.js_Mongodb - Fatal编程技术网

Javascript 如何使用NodeJS从MongoDb获取JSONObject表单中的结果

Javascript 如何使用NodeJS从MongoDb获取JSONObject表单中的结果,javascript,node.js,mongodb,Javascript,Node.js,Mongodb,我试图使用NodeJs从MongoDb获取Distinct数据。我获取的数据是JSONArray格式的,因为我没有从MongoDb获取密钥 下面是我的代码: const coll = client.db("mydb").collection("ItemsAddedByAdmin"); coll.distinct("product_name",(function(err,docs){ res.send({"product_name":docs});

我试图使用NodeJs从MongoDb获取
Distinct
数据。我获取的数据是JSONArray格式的,因为我没有从MongoDb获取密钥

下面是我的代码:

const coll = client.db("mydb").collection("ItemsAddedByAdmin");
coll.distinct("product_name",(function(err,docs){                     
   res.send({"product_name":docs});
}));
下面是我的输出

{
"product_name": [
    "Biology",
    "Chemistry",
    "Crown",
    "Crown Junior",
    "Long Book",
    "Long Book A4",
    "Physics",
    "Sketch Book",
    "Universal"
  ]
}
[
{},
{},
{},
{},
{},
{},
{},
{},
{}
]
当我尝试下面的代码时,我没有得到任何值

const coll = client.db("mydb").collection("ItemsAddedByAdmin");
coll.distinct("product_name",(function(err,docs){
   let output = docs.map(r => ({'product_name':docs.product_name}));
   res.send(output);                        
}));
输出

{
"product_name": [
    "Biology",
    "Chemistry",
    "Crown",
    "Crown Junior",
    "Long Book",
    "Long Book A4",
    "Physics",
    "Sketch Book",
    "Universal"
  ]
}
[
{},
{},
{},
{},
{},
{},
{},
{},
{}
]
我希望键值对中的值如下所示:

[
 {
   "product_name":Book
 },
 {
   "product_name":Pencil
 }  
]
有人请让我知道我如何才能得到想要的结果任何帮助将不胜感激


谢谢

只是一个小小的变化,它应该可以开始工作了:

const coll = client.db("mydb").collection("ItemsAddedByAdmin");
coll.distinct("product_name",(function(err,docs){

      let output = docs.map(r => ({'product_name':r})); // r contains the item of array at respective index
      res.send(output);       

}));

只是一个小变化,它应该开始工作:

const coll = client.db("mydb").collection("ItemsAddedByAdmin");
coll.distinct("product_name",(function(err,docs){

      let output = docs.map(r => ({'product_name':r})); // r contains the item of array at respective index
      res.send(output);       

}));

只需在映射函数中使用r

 let output = docs.map( r => ({'product_name': r})); 

只需在映射函数中使用r

 let output = docs.map( r => ({'product_name': r})); 

这将返回数据库中可用的相同值,但不明确。这将返回数据库中可用的相同值,但不明确。