簡體   English   中英

與Node.js一起使用時,MongoDB游標如何工作?

[英]How do MongoDB cursors work when used with Node.js?

我正在將Node.js與npm軟件包mongodb 當我使用findOne(...) ,得到的結果直接就是我搜索的項目。 當我改用find(...) ,沒有得到一個元素數組,但得到一個游標,如果您console.log它,它看起來很奇怪。

我的問題是為什么它返回一個游標而不是元素數組,並且cursor.forEach(...)調用然后是異步的,或者客戶端如何從游標中獲取數據?

它返回游標而不是數組,以向客戶端提供靈活性,使其以最適合其需求的方式訪問結果。

要獲取所有結果的數組,可以在游標上調用async toArray方法:

collection.find({...}).toArray((err, docs) => {...});

對於aggregate同樣的事情:

collection.aggregate([{$match: {...}}]).toArray((err, docs) => {...});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM