JSON es el acrónimo de JavaScript Object Notation y tiene diversas ventajas a la hora de implementar funciones en una página web. Descubre más aquí.
JSON es la sigla derivada de JavaScript Object Notation, un formato de archivo estándar abierto para almacenar datos de forma organizada y legible, al mismo tiempo que facilita el acceso. Los datos se presentan en un formato textual básico que consiste en pares “clave / valor”, lo cual facilita diversos procesos de intercambio de infromación.
Estrechamente relacionado con JavaScript, este formato puede, por lo tanto, ser generado y leído por la mayoría de los lenguajes de programación. Esta universalidad le ha permitido convertirse en una forma muy popular de almacenar, organizar, leer y compartir datos en aplicaciones y servicios web.
Muchos sitios web utilizan JSON para compartir datos, además de feeds RSS, un formato para entregar contenido en tiempo real a través de Internet. Por una buena razón, los feeds JSON se pueden cargar de forma asincrónica más fácilmente que los feeds XML / RSS.
Por lo tanto, se utiliza ampliamente para la comunicación asincrónica entre el navegador y el servidor, en particular como reemplazo de XML en ciertos sistemas de tipo AJAX.
Breve historia de JSON
Originalmente, JavaScript Object Notation surgió de una asociación entre JavaScript y scripts del lado del cliente. Fue inventado por Douglas Crockford quien sigue siendo la figura para mantener el sitio web oficial JSON.org.
La primera especificación oficial de JSON es el estándar ECMA-404 de 2013, pero el sitio web oficial se lanzó en 2002. Además, Yahoo y Google solo comenzaron a utilizarlo en 2005-2006.
¿Qué hace y cómo funciona JSON?
Basado en un subconjunto de JavaScript, JSON es un formato de texto completamente independiente de cualquier lenguaje. Sin embargo, las convenciones utilizadas no sorprenderán a los programadores familiarizados con lenguajes descendientes de C, como JavaScript, Python, Pearl u otros.
En otras palabras, funciona un poco como XML (pero menos desarrollado) y facilita la estructuración de la información presente en un documento de computadora.
Como simplemente se utiliza para facilitar el intercambio de datos, no debe contener comentarios, por ejemplo, lo que lo distingue de un lenguaje informático totalmente desarrollado. Pero algunas bibliotecas los aceptan si están escritos en JavaScript.
JSON es uno de los lenguajes comprensibles tanto para la mente humana como para la máquina. Además, su aprendizaje es fácil e intuitivo. Por tanto, sigue siendo muy limitado y eso lo hace menos confiable y poco resistente en términos de seguridad.
¿Cómo almacena objetos JSON?
Concretamente, los objetos JavaScript Object Notation son solo texto. Por lo tanto, es posible almacenarlos de varias formas. Se pueden almacenar en una base de datos, en un archivo de texto separado, en el almacenamiento del cliente como cookies o incluso utilizando el formato .json.
Una vez que se almacena el contenido, se puede recuperar y desencriptar de diferentes maneras y en diferentes lenguajes. Con el lenguaje JavaScript, puedes utilizar los métodos JSON.stringify () y JSON.parse ().
También puede interesarte: ¿Por qué JSON es uno de los estándares más utilizados para el intercambio de información?
¿Cuáles son sus principales usos?
- ¿Cuándo deberíamos usar JSON?
Se utiliza en varias situaciones, como:
- Solicitudes AJAX, ya que es más rápido y fácil de explorar en JavaScript que en XML
- Envía información de un servidor a un usuario para mostrarla en una página web o viceversa. Estas características lo convierten en un lenguaje ideal y universal para el intercambio de datos
- Formato de texto para implementar tags de datos estructurados de schema.org, que estructuran las páginas HTML y permiten que los mecanismos de búsqueda entiendan el contenido. Actualmente, Google también recomienda este formato para optimizar estrategias de SEO.
Diferencias entre JSON y objeto JavaScript
Como sugiere el nombre, JSON es más o menos un objeto JavaScript, pero existen algunas diferencias. En primer lugar, como se explicó anteriormente, JSON es un formato de texto que facilita el intercambio de datos estructurados entre todos los lenguajes de programación.
Por lo tanto, es universal y no se limita a JavaScript. En realidad, no hace parte de JavaScript, solo se deriva de la forma en que se escriben los objetos JavaScript.
En términos de sintaxis, existen dos diferencias principales. Primero, todos los nombres (claves) se representan como strings, es decir, deben ir entre comillas.
La otra gran diferencia está en el tipo de datos que JSON puede almacenar. Incluyendo los siguientes valores:
Object (objeto) Array (arreglo) Number (número) True (verdadero) False (falso) Null (nulo)
También puede interesarte: Conoce la estructura de JWT (JSON Web Token)
Es muy similar a lo que encuentras en objetos JS, pero como JSON se representa como texto, no puedes asignarle cosas como funciones o valores de fecha dinámicos utilizando Date(), por ejemplo.
Por lo tanto, no existen otros métodos u otras funcionalidades de JSON, solo hay texto; lo que por un lado es positivo pues lo convierte en un formato universal de intercambio de datos.
Bibliotecas externas
Este lenguaje se creó para almacenar objetos JavaScript. Se ha extendido y ahora puede ser utilizado por la mayoría de los lenguajes de desarrollo, incluido Java.
Sin embargo, el lenguaje Java no proporciona métodos nativos para analizar una secuencia de caracteres JSON. Entonces, la solución más simple es utilizar bibliotecas externas.
La biblioteca .org.json te permite analizar un string de caracteres JSON y luego leer los objetos y sus atributos directamente, ya sea como un objeto o como una matriz.
JSON vs XML: ¿cuál es el mejor formato de datos?
Aunque XML todavía se utiliza ampliamente, JSON ha ganado mucha popularidad. Según Douglas Crockford, ¡este formato en realidad tiene varias ventajas sobre XML!
En primer lugar, XML no está optimizado para el intercambio de datos, por ejemplo. Por una buena razón, no corresponde al modelo de datos de la mayoría de los lenguajes.
¿Cuáles son las desventajas de JSON?
A pesar de sus muchas ventajas, como la flexibilidad y la brevedad, este formato de datos tiene varias debilidades.
En primer lugar, la ausencia de un esquema que permita la flexibilidad en términos de representación de datos también aumenta el riesgo de “distorsionar” la información, lo cual es grave.
Además, el único tipo de número compatible es el formato de punto flotante de doble precisión. Por lo tanto, no es posible aprovechar los otros tipos de número más variados y matizados que se encuentran en muchos lenguajes de programación.
Tampoco hay un tipo de fecha. De hecho, los desarrolladores deben representar las fechas como strings.
Como resultado, esto puede dar lugar a problemas de discrepancia de formato. Así, la única alternativa es representar las fechas como milisegundos.
La ausencia de comentarios también evita que se anoten los campos. Se requiere documentación adicional, lo que aumenta el riesgo de malentendidos. Finalmente, aunque su detalle sea menor en comparación a XML, este formato de intercambio de datos no es el más conciso.
Ahora que conoces las nociones básicas sobre qué hace este recurso y para qué sirve ¿qué tal aprender sobre Scripting? Ingresa al contenido y continúa expandiendo tus conocimientos en el mundo de la programación.