所有我必须尝试在控制台中打印一个数字,这个数字保存在我的MongoDB中,但是当我在下面的data.min_score中获取它时,它在我的控制台中给了我未定义的。 我也用过parseInt然后输出NaN
根据我的方案,我的min_score值是10 我的要求是在控制台或浏览器中打印10
1)。节点js代码
this.levelChange = function(req, res, next){
try{
var arr = [];
var query = {level_num:1};
QuizLevel.find(query,function(err,data){
arr.push(data.min_score);
console.log(arr);
});
}catch(err){
console.log("Error");
return next(err);
}
};
2).Level Schema
var LevelSchema = new Schema([
{
_id:{type:String},
age:{type:Number},
level_num:{type:Number},
min_score:{type:Number},
max_questions:{type:Number}
}
3)。控制台输出
undefined
4)。这是我的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
}
答案 0 :(得分:0)
对模式使用.find函数时,将返回与参数中给出的查询匹配的对象数组。在这里,您正在使用 -
arr.push(data.min_score);
但数据是一个数组。尝试使用
arr.push(data[0].min_score);
看看它是否有所作为并对此发表评论。