Docs Menu
Docs Home
/
MongoDB Shell
/ /

EJSON.parse()

項目一覧

  • 構文
  • コマンドフィールド
  • 動作
  • EJSON.parse() による入力形式の設定
  • コマンドラインから EJSON.parse() を使用する
  • 詳細

EJSON.parse()メソッドは string の値を JSON に変換します。

EJSON.parse()メソッドは、入力として string と、出力形式を制御するオプションの修飾子を受け取ります。

EJSON.parse(string, [options])

EJSON.parse()メソッドは次のフィールドを取ります。

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

value

string

必須

string EJSON.parse()は JSON のキーと値のペアに変換されます

options

string

任意

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

効果

true

可能な場合はネイティブ JavaScript 型を返します

false

BSON types を返すことを優先

EJSON.parse()は、インタラクティブなmongoshセッション内、または--evalを使用してシステム コマンドラインから呼び出すことができます。

インタラクティブ セッションからEJSON.parse()を呼び出す。

EJSON.parse(string)

システム コマンドラインからEJSON.parse()を呼び出します。

mongosh --eval "EJSON.parse(string)"

これらの例を試すには、まず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.parse() は、 string を入力として受け入れます。 この例では、 EJSON.stringify() メソッドを使用して、 salesコレクションを string としてエクスポートします。

let salesCollection = EJSON.stringify( db.sales.find().toArray() )

JSON ペアを要求する db.collection.insertMany()などのメソッドの string をフォーマットするには、 EJSON.parse()を使用します。

db.salesRestored.insertMany( EJSON.parse( salesCollection ) )
  • EJSON.parse()salesCollectionの値を JSON ペアとして形式します。

  • db.salesRestored.insertMany()は JSON ペアを使用してsalesRestoredコレクションを作成します。

ファイルや API 呼び出しなどの外部ソースから string データをインポートするには、 mongosh --evalメソッドでEJSON.parse()を使用します。

この例では、 salesコレクションを ファイルとして保存します。

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

このコードにより、ローカル システム上にsales.jsonというファイルが作成されます。 ファイルをインポートして新しいコレクションを作成するには、 mongoshを終了し、コマンドラインから--eval操作を実行します。

# Note: This example is formatted to fit on the page.
mongosh --quiet \
--eval "db.salesFromFile.insertMany( \
EJSON.parse( fs.readFileSync( 'sales.json', 'utf8' ) ) )"
  • EJSON.parse() は、 string を入力として受け取ります。 この例では、 fs.readFileSync()を使用してsale.jsonファイルを string として読み取ります。

  • EJSON.parse() は入力 string を JSON ペアとして形式します。

  • db.salesFromFile.insertMany() は JSON ペアからsalesFromFileコレクションを作成します。

戻る

deserialize()