cursor.forEach() (original) (raw)
cursor.forEach(function)
Important
mongosh Method
This page documents a mongosh method. This is _not_the documentation for a language-specific driver, such as Node.js.
For MongoDB API drivers, refer to the language-specificMongoDB driver documentation.
Iterates the cursor to apply a JavaScript function
to each document from the cursor.
This method is available in deployments hosted in the following environments:
- MongoDB Atlas: The fully managed service for MongoDB deployments in the cloud
Note
This command is supported in all MongoDB Atlas clusters. For information on Atlas support for all commands, seeUnsupported Commands.
- MongoDB Enterprise: The subscription-based, self-managed version of MongoDB
- MongoDB Community: The source-available, free-to-use, and self-managed version of MongoDB
The method has the following syntax:
db.collection.find().forEach( <function> )
The method accepts the following field:
Field | Type | Description |
---|---|---|
function | JavaScript code | Function to apply to each document returned from the cursor. The function signature includes one field that stores the current document that is read from the cursor. |
Create the users
collection:
db.users.insertMany( [
{ name: "John" },
{ name: "Jane" }
] )
The following example uses forEach()
with thefind() method to print the user names that are read from the users
collection. myDoc
stores the current document.
db.users.find().forEach( function( myDoc ) {
print( "User name: " + myDoc.name )
} )
Example output:
User name: John
User name: Jane
Starting in mongosh 2.1.0, you can also use for-of
loops. The following example returns the same results as the previous example:
for ( const myDoc of db.users.find() ) {
print( "User name: " + myDoc.name )
}
For a method that has similar functionality, see cursor.map().