EJSON.parse()
Nesta página
O método EJSON.parse()
converte valores de string para JSON.
Sintaxe
O método EJSON.parse()
usa uma string como entrada e um modificador opcional que controla o formato de saída.
EJSON.parse(string, [options])
Campos de comando
O método EJSON.parse()
utiliza estes campos:
Campo | Tipo | necessidade | Descrição | ||||||
---|---|---|---|---|---|---|---|---|---|
| string | Obrigatório | A string | ||||||
| string | Opcional | Modifica ostipos de saída . A única opção é
|
Comportamento
Você pode chamar EJSON.parse()
de dentro de uma sessão de mongosh
interativa ou da linha de comando do sistema usando --eval
.
Chame EJSON.parse()
de uma sessão interativa:
EJSON.parse(string)
Chame EJSON.parse()
a partir da linha de comando do sistema:
mongosh --eval "EJSON.parse(string)"
Exemplos
Para testar estes exemplos, primeiro crie a collection 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"), }, ] )
Formatar Entrada com EJSON.parse()
EJSON.parse()
aceita uma string como entrada. Para este exemplo, use o EJSON.stringify() para exportar a collection sales
como uma string.
let salesCollection = EJSON.stringify( db.sales.find().toArray() )
Use EJSON.parse()
para formatar a string para métodos como db.collection.insertMany()
que esperam pares JSON:
db.salesRestored.insertMany( EJSON.parse( salesCollection ) )
EJSON.parse()
formata os valores emsalesCollection
como pares JSON.db.salesRestored.insertMany()
utiliza os pares JSON para criar a coleçãosalesRestored
.
Use EJSON.parse() da linha de comando
Para importar dados de string de uma fonte externa, como um arquivo ou uma chamada de API, use EJSON.parse()
com o método mongosh --eval
.
Para este exemplo, salve a coleção sales
como um arquivo.
let salesCollection = EJSON.stringify( db.sales.find().toArray() ) fs.writeFileSync( 'sales.json', salesCollection )
O código cria um arquivo no seu sistema local chamado sales.json
. Para importar o arquivo e criar uma nova collection, saia do mongosh
e execute uma operação do --eval
a partir da linha de comando.
# 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()
usa uma string como entrada. Este exemplo utilizafs.readFileSync()
para ler o arquivosale.json
como uma string.EJSON.parse()
formata a string de entrada como pares JSON.db.salesFromFile.insertMany()
cria a collectionsalesFromFile
a partir dos pares JSON.
Saiba mais
EJSON documentação
Rede de desenvolvedores Mozilla JSON.parse documentação