无法获取Mongoose / MongoDB的数组数据

时间:2017-02-02 10:03:49

标签: arrays mongodb mongoose

var productSchema = mongoose.Schema({
    user_id:String,
    products:[] 
});
var Products = mongoose.model('Products', productSchema);
...
...
Products.find({},function(err,docs){
   for(var i = 0; i < docs.length; i++){
       var f = docs[i].products;
       console.log(f);                          
   });

最后我可以安慰这个

  

{_id:8017ced8gf73kk25a8d9839x,     user_id:'739265b0dlskca14d8djd1a1',     __v:0,     产品:      [{color:'yellow',名称:'A'},        {name:'B',color:'red'}]}

但我想要的是Array中的'yellow'!不是数组数据。 我需要访问{}。

中的数据
var f = docs[i].products.color;

我尝试了这个,但它犯了错误。

1 个答案:

答案 0 :(得分:0)

如果你想在javascript中使用它,你可以在内部产品数组中运行循环

Products.find({},function(err,docs){
   for(var i = 0; i < docs.length; i++){
       for(var j in docs[i].products){
         if(docs[i].products[j] && docs[i].products[j].color){
            console.log(docs[i].products[j].color)
         }
       }                                
   });
相关问题