【问题标题】:How we get a single value of mongodb using node js我们如何使用 node js 获取 mongodb 的单个值
【发布时间】:2016-08-21 16:31:34
【问题描述】:

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

1)。这是我的节点 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 的结果

【问题讨论】:

  • arr.push() 不会返回您认为的结果。
  • 先生,我如何检索该值
  • min_score 来自 mongodb 使用节点 js

标签: javascript node.js mongodb


【解决方案1】:

如果数据是这样的输出:

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

然后你可以简单地使用 data.min_score 并且输出将是:10

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

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-25
      • 2019-10-18
      相关资源
      最近更新 更多