El método EJSON.parse() convierte los valores de string en JSON.
Sintaxis
El método EJSON.parse() toma una string como entrada y un modificador opcional que controla el formato de salida.
EJSON.parse(string, [options])
Campos de comandos
El método EJSON.parse() toma estos campos:
Campo | Tipo | Necesidad | Descripción | ||||||
|---|---|---|---|---|---|---|---|---|---|
| string | Requerido | La string | ||||||
| string | Opcional | Modifica los tipos de salida. La única opción es
|
Comportamiento
Puedes llamar a EJSON.parse() desde una sesión interactiva de mongosh o desde la línea de comandos del sistema usando --eval.
Llame a EJSON.parse() desde una sesión interactiva:
EJSON.parse(string)
Llama a EJSON.parse() desde la línea de comandos del sistema:
mongosh --eval "EJSON.parse(string)"
Ejemplos
Para probar estos ejemplos, primero cree la colección 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"), }, ] )
Formatear entrada con EJSON.parse()
EJSON.parse() acepta una string como entrada. Para este ejemplo, usa la EJSON.stringify() método para exportar la colección sales como una string.
let salesCollection = EJSON.stringify( db.sales.find().toArray() )
Utiliza EJSON.parse() para formatear la string en métodos como db.collection.insertMany() que esperan pares JSON:
db.salesRestored.insertMany( EJSON.parse( salesCollection ) )
EJSON.parse()da formato a los valores ensalesCollectioncomo pares JSON.db.salesRestored.insertMany()utiliza los pares de JSON para crear la colecciónsalesRestored.
Usa EJSON.parse() desde la línea de comandos
Para importar datos string desde una fuente externa como un archivo o una llamada a una API, usa EJSON.parse() con el método mongosh --eval.
Para este ejemplo, guarde la colección sales como un archivo.
let salesCollection = EJSON.stringify( db.sales.find().toArray() ) fs.writeFileSync( 'sales.json', salesCollection )
El código crea un archivo en su sistema local llamado sales.json. Para importar el archivo y crear una nueva colección, salga de mongosh y ejecute una operación de --eval desde la línea de comandos.
# 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()toma una string como entrada. Este ejemplo empleafs.readFileSync()para leer el archivosale.jsoncomo una string.EJSON.parse()formatea la string de entrada como pares JSON.db.salesFromFile.insertMany()crea la colecciónsalesFromFilea partir de los pares JSON.
Obtén más información
EJSON documentation
Documentación de Mozilla Red de desarrolladores JSON.parse