Docs Menu
Docs Home
/
MongoDB Shell
/ /

EJSON.deserialize()

項目一覧

  • 構文
  • メソッド フィールド
  • 動作
  • サンプル ファイルの作成
  • コマンドラインからサンプルファイルをインポート
  • 詳細

EJSON.deserialize()メソッドは、拡張 JSON オブジェクトを BSON オブジェクトに変換します。

このメソッドの構文は次のとおりです。

EJSON.deserialize( object, [ options ] )

メソッドは次のフィールドを取ります。

フィールド
タイプ
必要性
説明

object

EJSON オブジェクト

必須

変換する EJSON オブジェクト。 たとえば、ドキュメントの配列。

options

string

任意

出力オブジェクトの タイプを変更します。 唯一の オプションは{ relaxed: <boolean> }です。

ブール値
説明

true

プレーン JavaScript オブジェクトタイプを返します。 デフォルトはtrueです。

false

BSON オブジェクトタイプを返します。

EJSON.deserialize()は、インタラクティブなmongoshセッションまたは--evalを使用してシステム コマンドラインから実行できます。

インタラクティブmongoshセッションからEJSON.deserialize()を実行するには、次を使用します。

EJSON.deserialize( object, [ options ] )

システムコマンドラインからEJSON.deserialize()を実行するには、次のコマンドを使用します。

mongosh --eval "EJSON.deserialize( object, [ options ] )"

sales コレクションを次のように作成します。

db.sales.insertMany( [
{ custId: 345, purchaseDate: ISODate("2023-07-04"),
quantity: 4, cost: Decimal128("100.60") },
{ custId: 346, purchaseDate: ISODate("2023-07-12"),
quantity: 3, cost: Decimal128("175.45") },
{ custId: 486, purchaseDate: ISODate("2023-08-01"),
quantity: 9, cost: Decimal128("200.53") }
] )

次のセクションでは、サンプルファイルを作成し、 EJSON.deserialize()の例を使用してファイルをインポートする方法を示します。

次の例では、 salesドキュメントを配列として検索し、その結果をコンピューターのファイル システム上のsalesDeserialize.jsonという名前のファイルに保存します。

let salesCollection = EJSON.stringify( db.sales.find().toArray() )
fs.writeFileSync( 'salesDeserialize.json', salesCollection )

salesDeserialize.jsonファイルをインポートし、 という名前の新しいコレクションを作成するには、salesFromDeserializeFile mongoshを終了し、コマンドラインから次の例を実行します。

# Note: The example is formatted to fit the page.
mongosh --quiet --eval "db.salesFromDeserializeFile.insertMany( \
EJSON.deserialize( JSON.parse ( \
fs.readFileSync( 'salesDeserialize.json', 'utf8' ) ) ) )"

この例では、次のことが行われます。

  • fs.readFileSync()salesDeserialize.jsonファイルを読み取り、内容をutf8 Unicode 文字列として解釈します。

  • JSON.parse() は、ファイルから読み取られた string を JSON に変換します。

  • EJSON.deserialize() outputs JSON.

  • db.salesFromDeserializeFile.insertMany() は、 EJSON.deserialize()によって返された JSON を使用してsalesFromDeserializeFileコレクションを作成し、データを入力します。

注意

前の例ではEJSON.parse()を使用できています。これはより簡単なアプローチです。 JSON.parse()EJSON.deserialize()は柔軟性を高めます。

  • EJSON 逆シリアル化メソッド

  • EJSON ドキュメント

戻る

EJSON