quarta-feira, 14 de junho de 2017

JSON

O JSON (JavaScript Object Notation) é um formato de troca de dados. Para seres humanos, é fácil de ler e escrever. Para máquinas, é fácil de interpretar e gerar. Está baseado em um subconjunto da linguagem de programação JavaScript.

O JSON é apresentado em formato texto e completamente independente de linguagem, pois usa convenções que são familiares a diversas linguagens, incluindo C, C++, C#, Java, JavaScript, Perl, Python, entre outras. O JSON é constituído de duas estruturas:

  • Uma coleção de pares nome/valor. Em várias linguagens, isto é caracterizado como um objeto, registro, estrutura, dicionário, etc.
  • Uma lista ordenada de valores. Na maioria das linguagens, isto é caracterizado como um arranjo, vetor, lista ou sequência.
São estruturas de dados universais. Virtualmente todas as linguagens de programação modernas as suportam, de uma forma ou de outra. É aceitável que um formato de troca de dados que seja independente de linguagem de programação se baseie nestas estruturas. Em JSON, os dados são
apresentados desta forma:
  • Um objeto é um conjunto desordenado de pares nome/valor.
  • Um objeto começa com  (chave de abertura) e termina com  (chave de fechamento).
  • Cada nome é seguido por : (dois pontos) e os pares nome/valor são seguidos por , (vírgula).


  • Um array é uma coleção de valores ordenados. O array começa com [ (colchete de abertura) e termina com ] (colchete de fechamento). Os valores são separados por , (vírgula).

  • Um valor pode ser uma cadeia de caracteres (string), ou um número, ou true ou false, ou null, ou um objeto ou um array. Estas estruturas podem estar aninhadas.


  • Uma string é uma coleção de nenhum ou mais caracteres unicode, entre aspas duplas, usando barras invertidas como caractere de escape. Um caractere está representado como um simples caractere de string. Uma cadeia de caracteres é parecida com uma cadeia de caracteres em C ou Java.

  • Um número é similar a um número em C ou Java, exceto quando não se usa os números octais ou hexadecimais.




object
         {}
         { members }
members
         pair
         pair , members
pair
         string : value
array
         []
         [ elements ]
elements
         value
         value , elements
value
         string
         number
         object
         array
         true
         false
         null
string
         ""
         " chars "
chars
         char
         char chars
char
         any-Unicode-character-
                     except-"-or-\-or-
                  control-character
          \"
         \\
         \/
         \b
         \f
         \n
         \r
         \t 
         \u four-hex-digits
number
         int
         int frac
         int exp
         int frac exp
int
         digit
         digit1-9 digits
         - digit
         - digit1-9 digits
frac
         . digits
exp
         e digits
         digits
digit
         digit digits
e
         e
         e+
         e-
         E
         E+
         E-

Nenhum comentário:

Postar um comentário