mongoose从查询的文档中获取嵌套的字段值

时间:2017-04-01 19:39:48

标签: node.js mongoose

我是Node js和Mongoose的新手,我坚持这个查询。

exports.getIndividual=(matchId,phone)=>
 new Promise((resolve,reject)=>{
 var e="matchPersonal.m"+matchId+".bo1";
 query={};
 query[e]=1;

 var quer=usersc.findOne({phone:"8989898980"}).select(query);
 quer.exec(function (err, matc) { 

 var m=matc.toObject();

 console.log('',m);

当我运行此查询时,我会在控制台上找到这个东西

        {matchPersonal:{m1:{bo1:3}}}

但我只需要3作为输出,我不能使用点运算符直接读取对象属性,因为

   var b=matchPersonal.m+matchId.bo1

不起作用' +'不能在这里使用所以请帮助

1 个答案:

答案 0 :(得分:0)

尝试:

var mNum = m+matchId;
var b=matchPersonal[mNum].bo1

因为您可以选择带点和括号的属性,但括号也可以与变量一起使用。