cursor.map()
cursor.map(function)
重要
mongosh メソッド
このページでは、
mongosh
メソッドが文書化されます。これは Node.js などの言語固有のドライバーのドキュメントではありません。MongoDB API ドライバーについては、各言語の MongoDB ドライバー ドキュメントを参照してください。
カーソルが訪問する各ドキュメントに
function
を適用し、function
の連続するアプリケーションからの戻り値をCursor
オブジェクトに収集します。cursor.map()
メソッドには次のパラメーターがあります。Parameterタイプ説明function
関数
カーソルが訪問する各ドキュメントに適用する関数。
互換性
このメソッドは、次の環境でホストされている配置で使用できます。
MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです
注意
このコマンドは、すべての MongoDB Atlas クラスターでサポートされています。すべてのコマンドに対する Atlas のサポートについては、「サポートされていないコマンド」を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
動作
cursor.map()
はCursor
オブジェクトを返します。 .map()
は 型のみを変換し、新しいカーソルは作成しないことに注意してください。 .toArray()
を使用してCursor
オブジェクトをArray
に変換できます。
例
これらの例では、製品コレクションを参照します。
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 } ])
コレクションから値を返す
製品名を取得します。
db.products.find().map( function(p) { return p.name; } ) ;
結果を として返す Array
割引販売価格を計算し、結果を配列として返します。
var salePrices = db.products.find().map( function(p) { return p.price * .9 } ).toArray() ;
出力が次であることを確認します: Array
salePrices.constructor.name
以下も参照してください。
cursor.forEach()
も同様の機能を備えています。