Tenho visto referências a alguns navegadores que suportam nativamente a análise / serialização JSON de objetos com segurança e eficiência por meio do window.JSON
objeto, mas os detalhes são difíceis de encontrar. Alguém pode apontar na direção certa? Quais são os métodos que este objeto expõe? Em quais navegadores ele é compatível?
javascript
json
browser
levik
fonte
fonte
Respostas:
Todos os navegadores modernos suportam codificação / decodificação JSON nativa (Internet Explorer 8+, Firefox 3.1+, Safari 4+ e Chrome 3+). Basicamente,
JSON.parse(str)
irá analisar a string JSONstr
e retornar um objeto, eJSON.stringify(obj)
irá retornar a representação JSON do objetoobj
.Mais detalhes no artigo MDN .
fonte
eval()
strings JSON porque você estará reinventando a roda e provavelmente errará.jQuery-1.7.1.js - 555 linha ...
fonte
A vantagem de usar json2.js é que ele só instalará um analisador se o navegador ainda não tiver um. Você pode manter a compatibilidade com navegadores mais antigos, mas use o analisador JSON nativo (que é mais seguro e rápido) se estiver disponível.
Navegadores com JSON nativo:
G.
fonte
[estendendo o fanatismo pela música comentário ]
Se você estiver usando jQuery, use parseJSON
Internamente, ele verifica se o navegador oferece suporte a .JSON.parse e (se disponível) chama a janela nativa.JSON.parse.
Caso contrário, analisa a si mesmo.
fonte
Para o benefício de qualquer pessoa que encontrar este tópico - para uma lista definitiva e atualizada de navegadores que suportam o objeto JSON, veja aqui. . Uma breve resposta genérica - praticamente todos os navegadores que realmente importam no ano de 2013+.
fonte