Navigation

cursor.map()

On this page

cursor.map(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-specific :driver:`MongoDB driver documentation </>`.

For the legacy mongo shell documentation, refer to the documentation for the corresponding MongoDB Server release:

Applies a function to each document visited by the cursor and collects the return values from successive applications of the function into a Cursor object.

The cursor.map() method has the following parameter:

Parameter Type Description
function function A function to apply to each document visited by the cursor.

Behavior

cursor.map() returns a Cursor object. Note that .map() only converts the type, it does not create a new cursor. You can convert the Cursor object to an Array with .toArray().

Examples

These examples refer to the products collection:

db.products.insertMany([
   { _id: 1, name: 'widget', price: 10.89 },
   { _id: 2, name: 'thing', price: 11.24 },
   { _id: 3, name: 'moppet', price: 8 },
   { _id: 4, name: 'cosa', price: 24.19 }
])

Return a Value From a Collection

Get the product names.

db.products.find().map( function(p) { return p.name; } ) ;

Return Results as an Array

Calculate a discounted sale price and return the results as an array.

var salePrices = db.products.find().map( function(p) { return p.price * .9 } ).toArray() ;

Confirm that the output is an Array

salePrices.constructor.name

See also

cursor.forEach() for similar functionality.