2013-08-26 94 views
2

我想要從MongoDB中的集合中檢索記錄的值在一個變量中獲取計數的mongodb集合的值

這是我的源代碼。

exports.procc = function(req, res) { 

     db.collection('search', function(err, collection) { 
        collection.count({'str':'car'},function(err, count) { 
         console.log(count+' records');//Prints 2 records 
         c=count;  
        }); 
     }); 
     console.log('records= '+c);//print 0 records 
res.end(); 
}; 

的問題是出回調的打印寄存器的數量,而是出於回調版畫0的,我不知道如何保存在一個變量值。

回答

1

由於db.collectioncollection.count和異步方法中,c變量是越來越設置之後執行第二console.log語句

所以你想要做的任何事情c必須發生在collection.count回調。

+0

好的,我會考慮它的 –

0

您的代碼不尊重node.js IO的異步性質。

exports.procc = function(req, res) { 
     db.collection('search', function(err, collection) { 
        collection.count({'str':'car'},function(err, count) { 
         console.log('records= ' + count);//print 0 records 
         res.end(); 
        }); 
     }); 
}; 
相關問題