Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Dúvida sobre o exercício

No exercício:

const novoLivro = { "titulo": "Node.js: Guia Pratico", "autor": "Alice Coder", "genero": "Tecnologia", "ano_publicacao": 2022 };

const biblioteca = require("./biblioteca.json"); biblioteca.push(novoLivro);

const bibliotecaString = JSON.parse(JSON.stringify(biblioteca));

console.log(typeof(bibliotecaString)) console.log(bibliotecaString)

A variável biblioteca, ao receber o resultado do require, não teria o tipo de objeto? como o método push funciona se biblioteca não foi convertida para um array?

1 resposta
solução!

Oi Guilherme,

Sua dúvida é bastante pertinente. Quando você utiliza require para carregar o arquivo biblioteca.json, o conteúdo desse arquivo é convertido em um objeto JavaScript. Se o JSON contiver um array (por exemplo, [{...}, {...}]), você terá um array ao invés de um objeto simples.

O método push funciona porque, se biblioteca foi carregada corretamente como um array no JSON, você poderá adicionar novos itens a ele. Para que isso funcione, a estrutura do biblioteca.json deve ser um array inicial.

tux matrix    Caso este post o tenha ajudado, por favor, marcar como solucionado ☑️. Bons Estudos! 🤓