Manipulando JSON em JavaScript

JSON.parse() e JSON.stringify() são essenciais no JavaScript para manipular JSON; evite eval() por segurança.

Por
2 min. de leitura

Fala, meus consagrados! Beleza?

JavaScript oferece poderosas ferramentas para trabalhar com dados no formato JSON, que é amplamente utilizado na web para intercâmbio de dados entre clientes e servidores. Três funções essenciais que permitem manipular esses dados são:

  • JSON.parse();
  • eval(); e
  • JSON.stringify().

Cada uma dessas funções desempenha um papel crucial no processamento de JSON em aplicações web.

JSON.parse() é uma função segura e eficaz que converte uma string contendo dados JSON em um objeto JavaScript. É a maneira recomendada de desserializar dados JSON que você pode receber de uma API web ou de armazenamento local em um formato que pode ser facilmente manipulado em JavaScript.

Exemplo:

const jsonStr = ‘{“nome”: “Rogério Araújo”, “idade”: 45, “cidade”: “Teresina”}’;

const jsonObj = JSON.parse(jsonStr);

console.log(jsonObj.nome); // Rogério Araújo

Vantagens no seu uso:

  • Segurança: ao contrário de eval(), JSON.parse() não executa o código, o que elimina riscos de vulnerabilidades de segurança; e
  • Precisão: converte somente strings válidas JSON em objetos JavaScript.

eval() é uma função JavaScript que executa código representado como strings. Embora possa ser usada para analisar strings JSON convertendo-as em objetos JavaScript, seu uso é desaconselhado para este fim devido a preocupações de segurança.

Exemplo:

const jsonStr = ‘{“nome”: “Rogério Araújo”, “idade”: 45, “cidade”: “Teresina”}’;

const jsonObj = eval(‘(‘ + jsonStr + ‘)’);

console.log(jsonObj.nome); // Rogério Araújo

Riscos no seu uso:

  • Segurança: eval() pode executar qualquer código JavaScript, o que pode levar a ataques de injeção de scripts se a string não for de uma fonte confiável; e
  • Manutenção e desempenho: O uso de eval() pode levar a problemas de desempenho e dificuldades de manutenção de código.

JSON.stringify() é a função complementar a JSON.parse(), utilizada para serializar objetos JavaScript em strings JSON. É extremamente útil para enviar dados de um cliente para um servidor ou salvar estado em armazenamento local.

Exemplo:

const jsonObj = {nome: “Rogério Araújo”, idade: 45, cidade: “Teresina”};

const jsonStr = JSON.stringify(jsonObj);

console.log(jsonStr); // ‘{“nome”: “Rogério Araújo”, “idade”: 45, “cidade”: “Teresina”}’

Vantagens no seu uso:

  • Facilidade de uso: permite uma conversão direta e fácil de objetos complexos em strings JSON; e
  • Compatibilidade: as strings JSON geradas são prontamente consumíveis por APIs web e podem ser facilmente transmitidas pela rede.

JSON.parse() e JSON.stringify() formam um duo essencial para o manuseio seguro e eficiente de dados JSON em JavaScript, adequados para aplicações modernas na web. Por outro lado, eval() deve ser evitado para análise de JSON devido a seus riscos inerentes. A escolha da função correta para cada cenário garante não apenas a funcionalidade da aplicação, mas também a segurança e a integridade dos dados manipulados.

É isso! Espero que tenham gostado! 

Forte abraço e até a próxima jornada!

_________________________

Professor Rogerão Araújo


Quer ficar por dentro dos concursos públicos abertos e previstos pelo Brasil? Clique nos links abaixo:

CONCURSOS 2025

CONCURSOS ABERTOS

QUESTÕES DE CONCURSOS

Receba gratuitamente no seu celular as principais notícias do mundo dos concursos. Clique no link abaixo e inscreva-se:

WHATSAPP

TELEGRAM

Por
2 min. de leitura