Qué es JSON
Cuando tu aplicación le hace una pregunta a una , la respuesta vuelve como texto en un formato llamado . Se convirtió en el predeterminado porque es legible por humanos y fácil de manejar para los programas. Lo verás constantemente, así que vale la pena poder leerlo.
JSON está construido a partir de claves y valores. Una clave es una etiqueta entre comillas; un valor es el dato asociado a ella. Aquí hay un ejemplo real que describe a un usuario:
{
"id": 42,
"name": "Ada Lovelace",
"email": "[email protected]",
"isAdmin": false,
"loginCount": 137,
"tags": ["beta", "early-access"],
"profile": {
"city": "London",
"avatarUrl": null
}
}
Léelo como un formulario que alguien llenó. "name" es un campo, "Ada Lovelace" es lo que escribieron en él. Dos estructuras hacen todo el trabajo:
- Un objeto está envuelto en llaves
{ }. Es un conjunto de pares clave/valor, como un registro. Todo el ejemplo de arriba es un objeto. - Un arreglo (array) está envuelto en corchetes
[ ]. Es una lista ordenada de valores. Arriba,"tags"contiene un arreglo de dos cadenas de texto.
Nota que "profile" es un objeto dentro del objeto. JSON anida: un valor puede ser a su vez un objeto o un arreglo, tan profundo como haga falta. Así es como una sola respuesta puede describir a un usuario, su dirección y sus últimos diez pedidos al mismo tiempo.
Dibujado como un árbol, el mismo objeto de usuario muestra su forma de un vistazo: campos planos arriba, una lista y un objeto anidado ramificándose:
{ } user (object)
├── id .......... 42 (number)
├── name ........ "Ada Lovelace" (string)
├── isAdmin ..... false (boolean)
├── tags ........ [ ] (array)
│ ├── "beta"
│ └── "early-access"
└── profile ..... { } (object)
├── city ...... "London" (string)
└── avatarUrl . null (null = no value)