2016-08-21 116 views
0

我不得不嘗試在控制檯打印數量,即保存在我的MongoDB的,但是當我如下取這個data.min_score它給了我在我的控制檯不確定。 我也使用parseInt函數然後輸出根據我的方案來爲NaN值在控制檯或瀏覽器

,我的min_score值爲10 我的要求是在控制檯或瀏覽器

1)打印10。節點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架構

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

可能的重複[Mongo shell執行查詢從文件和顯示結果](http://stackoverflow.com/questions/16326241/mongo-shell-execute-query-from-file-and-show-result) – apieceofbart

+2

嗨Ritesh,歡迎來到[so]。如果您正在編輯您的帖子,請確保使用您用於創建該帳戶的相同帳戶。如果您無法訪問您的帳戶,請參閱http://stackoverflow.com/help/reset-password –

回答

0

當您使用.find功能架構,返回匹配的參數給出的查詢對象的數組。在這裏,你用 -
arr.push(data.min_score);
但數據是一個數組。嘗試使用
arr.push(data[0].min_score);
看看它是否有所作爲並對此發表評論。

+0

感謝您的回覆先生,但它的工作,但一半。現在當前輸出在控制檯上出現1。另外,我正在發送我的關卡JSON數據。 –

+1

爲我分手。在你發佈的代碼中,你正在查詢數據庫中有level_num 1的記錄,對嗎?這意味着它應該只返回一個文檔,即min_score爲10的記錄。我不確定這是否是這裏的錯誤,但是讓您的查詢對象爲 - var query = {'level_num':1}'(屬性在引號中)。如果這不起作用,請執行console.log(data)並在此處發佈結果。 – Zeokav