繁体   English   中英

我们如何使用 node.js 获得单个值 mongodb

[英]How we get a single value of mongodb using node js

我必须尝试在控制台中打印 MongoDB 的值。 但它在我的控制台中给了我未定义的我做了很多事情来获得结果但一切都是徒劳的我想在控制台或浏览器中使用 node.js 代码从 MongoDB 打印数字单字段值(min_score)

1). 这是我的 node.js 代码

   this.levelChange = function(req, res, next){

    try{

        var arr = [];
        var query = {'level_num':1};
        QuizLevel.find(query,function(err,data){
            var a = parseInt(arr.push(data));
            console.log(a.min_score);
        });
    }catch(err){
        console.log("Error");
        return next(err);
    }
};
return this;

2). 这是我的 js 级架构

   {
     _id:{type:String},
     age:{type:Number},
     level_num:{type:Number},
     min_score:{type:Number},
     max_questions:{type:Number}
     }

3). 这是我的 json 值

     {
     "age":5,
      "level_num":1,
     "min_score":10,
     "max_questions":30
     }
    {
     "age":5,
     "level_num":2,
     "min_score":12,
     "max_questions":33
     }
     {
     "age":5,
     "level_num":3,
     "min_score":15,
     "max_questions":35
      }

4). 这是控制台中的结果

 [undefind]

我想在我的控制台中得到结果 min_score 10

如果数据是这样的 output:

 {
     "age":5,
      "level_num":1,
     "min_score":10,
     "max_questions":30
     }

然后你可以简单地使用 data.min_score 和 output 将是:10

var a = parseInt(arr.push(data)); 会给你 a as 1 所以 a.min_score 肯定是未定义的。

我遇到了同样的问题。 而不是var a = parseInt(arr.push(data)); 您需要解构数组,然后使用 data.min_score

QuizLevel.find(query,function(err,data){
        const [a] = data
        console.log(a.min_score);
    })

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM