Menu Docs
Página inicial do Docs
/
MongoDB Shell
/ /

EJSON.parse()

Nesta página

  • Sintaxe
  • Campos de comando
  • Comportamento
  • Exemplos
  • Formatar Entrada com EJSON.parse()
  • Use EJSON.parse() da linha de comando
  • Saiba mais

O método EJSON.parse() converte valores de string para JSON.

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])

O método EJSON.parse() utiliza estes campos:

Campo
Tipo
necessidade
Descrição
value
string
Obrigatório
A string EJSON.parse() se transforma em pares de valor-chave JSON
options
string
Opcional

Modifica tipos de saída . A única opção é { relaxed: <boolean> }.

Valor
Efeito
true
Retorna tipos de JavaScript nativos quando possível
false
Preferem retornar BSON types

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)"

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"), },
] )

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 em salesCollection como pares JSON.

  • db.salesRestored.insertMany() utiliza os pares JSON para criar a coleção salesRestored .

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 utiliza fs.readFileSync() para ler o arquivo sale.json como uma string.

  • EJSON.parse() formata a string de entrada como pares JSON.

  • db.salesFromFile.insertMany() cria a collection salesFromFile a partir dos pares JSON.

← EJSON.deserialize()