¿Qué es JSON?

Una breve guía para comprender JSON y sus casos de uso.

Introducció

En un mundo inundado de datos, es cada vez más importante saber cómo trabajar con una variedad de datos. Como programadores, necesitamos poder transferir nuestras estructuras de datos pobladas desde cualquier idioma que elijamos a un formato que sea reconocible y legible por otros lenguajes y plataformas. Afortunadamente para nosotros, existe tal formato de intercambio de datos.

¿Qué es JSON?

JSON, o JavaScript Object Notation, es un formato estándar popular, independiente del lenguaje, para almacenar e intercambiar datos. Adoptado por ECMA International , una asociación industrial fundada en 1961 para estandarizar los sistemas de información y comunicación, JSON se ha convertido en el estándar de facto que facilita el almacenamiento y envío de datos entre todos los lenguajes de programación.

Usos comunes de JSON

JSON se utiliza mucho para facilitar la transferencia de datos en aplicaciones web entre un cliente, como un navegador web y un servidor. Un ejemplo típico en el que se produce dicha transferencia de datos es cuando completa un formulario web. Los datos del formulario se convierten de HTML a objetos JavaScript en objetos JSON y se envían a un servidor web remoto para su procesamiento. Estas transacciones podrían ser tan simples como ingresar una consulta de motor de búsqueda a una solicitud de trabajo de varias páginas.

Cuando las empresas hacen públicos sus datos para otras aplicaciones, como Spotify compartiendo su biblioteca de música o Google compartiendo sus datos de mapas, la información se formatea en JSON. De esta forma, cualquier aplicación, independientemente del idioma, puede recopilar y analizar los datos.

Algunas de las API web populares que utilizan JSON en los intercambios de datos son:

Sintaxis JSON

Dado que JSON se deriva del lenguaje de programación JavaScript, su apariencia es similar a la de los objetos JavaScript.

Un objeto JSON de muestra se representa de la siguiente manera:

{
  "student": {
    "name": "Rumaisa Mahoney",
    "age": 30,
    "fullTime": true,
    "languages": [ "JavaScript", "HTML", "CSS" ],
    "GPA": 3.9,
    "favoriteSubject": null
  }
}

Tenga en cuenta las siguientes reglas de sintaxis para JSON:

  • Las llaves {..}, sostienen objetos.
  • Los corchetes`` [..]contienen matrices.
  • Los datos se almacenan en pares nombre-valor separados por dos puntos, :.
  • Cada par nombre-valor se separa de otro par por una coma, ,De manera similar, todos los elementos de una matriz también están delimitados por una coma. Las comas finales están prohibidas.
  • Los nombres de propiedad JSON deben estar en (" ")texto entre comillas dobles, aunque los nombres de JavaScript no se ajustan a este rigor.

Tipos de datos JSON

Un tipo de datos JSON debe ser uno de los siguientes:

  • string (entre comillas dobles)
  • número (entero o punto flotante)
  • objeto (par nombre-valor)
  • array (delimitado por comas)
  • booleano (verdadero o falso)
  • nulo

Intente encontrar todos los tipos de datos en este ejemplo JSON:

{
  "student": {
    "name": "Rumaisa Mahoney",
    "age": 30,
    "fullTime": true,
    "languages": [ "JavaScript", "HTML", "CSS" ],
    "GPA": 3.9,
    "favoriteSubject": null
  }
}

En particular, JSON no cubre todos los tipos de datos. Los tipos que no están representados en JSON, como las fechas, pueden almacenarse como una cadena y convertirse a una estructura de datos específica del idioma. Este es un formato de fecha aceptable reconocido internacionalmente en ISO 8601 :

"2014-01-01T23:28:56.782Z"

Este formato anterior contiene partes que se asemejan a una fecha y una hora. Sin embargo, como cadena, es difícil para un lenguaje de programación usarlo tal cual. Convenientemente, todos los lenguajes de programación tienen funciones JSON integradas para convertir esta cadena en un formato más legible y utilizable, como:

Wed Jan 01 2014 13:28:56 GMT-1000 (Hawaiian Standard Time)

Esto cubre prácticamente la descripción básica de JSON, su popularidad y su sintaxis. ¡Felicitaciones por alcanzar este hito!




Comentarios