JSON
Em computação, JSON (pronúncia ['dʒejzən], J-son em inglês), um acrônimo de JavaScript Object Notation, é um formato compacto, de padrão aberto independente, de troca de dados simples e rápida (parsing) entre sistemas, especificado por Douglas Crockford em 2000, que utiliza texto legível a humanos, no formato atributo-valor (natureza auto-descritiva). Isto é, um modelo de transmissão de informações no formato texto, muito usado em web services que usa transferência de estado representacional (REST) e aplicações AJAX, substituindo o uso do XML. O padrão foi especificado em 2000 e, definido em 2013 nos dois padrões concorrentes, RFC7159 e ECMA-404. Em 2017 a RFC8259 substituiu a 7159 e a ECMA-404 foi revisada. O JSON é um formato de troca de dados entre sistemas independente de linguagem de programação derivado do JavaScript.[1][2] Mas a partir de 2017 muitas linguagens de programação incluiram código para gerar, analisar sintaticamente dados em formato JSON e também converter para objetos da linguagem. O tipo de mídia da Internet oficial (MIME) para o JSON é O RFC 7493 define um perfil restrito de JSON, conhecido como I-JSON (abreviação de "Internet JSON"), que visa superar alguns problemas de interoperabilidade com o JSON. Cada documento I-JSON é um documento JSON válido, mas o contrário não é necessariamente verdade. Apesar de derivado do Javascript, alguns códigos JSON não são considerados Javascript.[3] DescriçãoA simplicidade de JSON ajudou a popularizar seu uso, especialmente como uma alternativa para XML em AJAX. Uma das vantagens sobre o XML como um formato para intercâmbio de dados, é a facilidade de escrever um analisador JSON, mesmo em JavaScript, simplesmente usando a função Na prática, os argumentos de desenvolvimento e desempenho do analisador são raramente revelados, devido ao sistema de segurança no uso do Enquanto JSON é frequentemente posicionado "em confronto" com XML, não é incomum ver tanto JSON como XML sendo usados na mesma aplicação. Por exemplo, uma aplicação no lado cliente a qual integra dados do Google Maps com dados atmosféricos através de SOAP, requer suporte para ambos formatos de dados. Existe um crescente suporte para JSON através do uso de pequenos pacotes de terceiros. A lista de linguagens suportadas incluem ActionScript, C/C++, C#, ColdFusion, Java (biblioteca org.json), JavaScript, OCaml, Perl, PHP, ASP 3.0, Python, Rebol, Ruby, Lua, Progress 4GL, Go Lang, Android. Em dezembro de 2005, com a característica de rápido transmissão de dados, Yahoo! começou a suportar JSON como uma opção para alguns de seus serviços Web,[4] assim como o Google (biblioteca com.google.gson.Gson).[5][6] JSON versus XMLO JSON pode ser considerado concorrente da XML na área de troca de informações. Vejamos algumas das principais semelhanças e diferenças entre os modelos de marcação das informações: Semelhanças:
Diferenças:
Tipos de dados, sintaxe e exemplosOs tipos de dados básicos do JSON são:
Espaços em branco são permitidos com limites e ignorados em volta e entre elementos sintáticos, mas não dentro de um string. Só quatro caracteres são tratados assim: o espaço, a tabulação horizontal(TAB), o line feed(LF) e o carriage return(CR). Em particular, a marca de ordem de byte não deve aparecer em um documento JSON conforme o padrão. JSON não tem uma sintaxe para comentários. Para troca de dados em um ecossistema aberto, JSON deve estar codificado em UTF-8. Exemplo de uma lista de alunos com suas notas{"Alunos":[
{ "nome": "Edson Sales Arantes", "notas": [ 8, 9, 5 ] },
{ "nome": "Luiz Livelli ", "notas": [ 8, 10, 7 ] },
{ "nome": "Caique Caicedo De Plata", "notas": [ 10, 10, 9 ] }
]}
Exemplo de uma representação de um menu{"menu":{
"id": "file",
"value": "File",
"popup":{
"menuitem": [
{"value": "New", "onclick": "CreateNewDoc()"},
{"value": "Open", "onclick": "OpenDoc()"},
{"value": "Close", "onclick": "CloseDoc()"}
]
}
}}
O código acima em JSON representado no padrão XML: <menu id="file" value="File">
<popup>
<menuitem value="New" onclick="CreateNewDoc()" />
<menuitem value="Open" onclick="OpenDoc()" />
<menuitem value="Close" onclick="CloseDoc()" />
</popup>
</menu>
Usando JSON no JavaScriptEm 2018, todos os navegadores principais suportavam no mínimo a quinta edição do ECMAScript que provia[7] uma forma segura e rápida de decodificar JSON: var p = JSON.parse(json_string);
Referências
Ligações Externas |