Tipos de Dados JSON Explicados

JSON suporta exatamente seis tipos de dados, tornando-o notavelmente simples comparado a linguagens de programação completas. No entanto, estes seis tipos são suficientes para representar virtualmente qualquer estrutura de dados.

Strings

Strings em JSON representam dados de texto e são o tipo primitivo mais comumente usado. Elas são delimitadas por aspas duplas e podem conter quaisquer caracteres Unicode. Certos caracteres têm significado especial e devem ser escapados com uma barra invertida. Caracteres de espaço em branco têm sequências de escape dedicadas: \n para nova linha, \r para retorno de carro, \t para tab. Qualquer caractere Unicode pode ser representado usando notação \uXXXX. Strings não têm comprimento máximo teórico, mas limites práticos dependem do parser. Usos comuns incluem nomes, descrições, URLs e datas em formato ISO 8601.

Números

Números JSON representam valores numéricos e podem ser inteiros ou números decimais. Diferente de strings, números não são delimitados por aspas. Notação científica é suportada para números muito grandes ou muito pequenos. Números JSON têm várias restrições: sem zeros à esquerda, sem sinal positivo de prefixo, sem hexadecimal. Valores especiais de ponto flutuante IEEE NaN e Infinity não são suportados. Precisão não é garantida para inteiros muito grandes. JavaScript representa com segurança inteiros apenas até 2^53 - 1. Para valores maiores, considere armazená-los como strings.

Booleanos e Null

Booleanos e null são os tipos JSON mais simples. Valores booleanos são escritos como minúsculos true ou false sem aspas. Null representa a ausência intencional de qualquer valor, escrito como null minúsculo. Null é distinto de chaves faltando e de valores vazios. Uma string vazia "" ou array vazio [] são valores, não null. Seja consistente em como sua aplicação interpreta null versus chaves faltando.

Objetos e Arrays

Objetos e arrays são os tipos compostos que dão a JSON seu poder. Objetos modelam entidades com propriedades nomeadas. Arrays modelam coleções onde a ordem importa. Aninhamento habilita modelagem rica de dados. Objetos podem conter arrays, arrays podem conter objetos, e ambos podem ser aninhados a qualquer profundidade. Ao modelar dados, pense em como eles serão acessados. Para grandes coleções, considere paginação. Relacionamentos podem ser modelados por incorporação ou por referência.

Testar a Ferramenta

Formatador JSON

Formatador JSON

Artigos Relacionados