formato de datos JSON

All lectures for ES purposes
Nivel 1, Lección 76
Disponible

JSON es uno de los formatos más populares para representar datos como texto. Por ejemplo, JSON se usa para transferir datos entre el frontend y el backend, en archivos de configuración, en juegos, en editores de texto y en muchas otras áreas. Como programador, definitivamente encontrarás JSON.

Introducción a la sintaxis

Enumeremos los tipos de datos disponibles en JSON:

  1. Las cadenas son cualquier carácter entre comillas dobles:

    "kwerty"
    "125 + 42"
    "GRAMO"

    Los caracteres especiales se escapan con una barra inclinada:

    "primera línea\nsegunda línea"
    "¡El dijo hola!\""
  2. Números, incluidos los números negativos y reales. Sin comillas:

    18 -333 17.88 1.2e6
  3. Los valores booleanos son verdadero / falso (sin comillas).

  4. nulo es el valor estándar para representar "nada". Aquí no se utilizan comillas.

  5. Matriz: este tipo puede contener valores de cualquier otro tipo. Está envuelto entre corchetes. Sus elementos están separados por comas:

    ["Código", "Gimnasio", "CodeGym", "¯\_(ツ)_/¯"]
    [verdadero, verdadero, falso, verdadero, falso, falso, falso, falso, falso]
    [[1, 2], [3, 999, 4, -5], [77]]

    El último ejemplo es una matriz de matrices

  6. Objeto: este tipo complejo es el más utilizado. Contiene pares clave-valor, donde el valor puede ser cualquiera de los tipos enumerados anteriormente, así como otros objetos. Está envuelto entre llaves y los pares están separados por comas:

    
    {
     "name": "Dale",
     "age": 7
    }
    

Representando un objeto Java como JSON

Ahora tomemos un objeto Java y veamos cómo se ve como JSON.

Primero, definamos una clase:


public class Human {
	String name;
	boolean male;
	int age;
	Set<Human> parents;

	public Human(String name, boolean male, int age) {
    	    this.name = name;
    	    this.male = male;
    	    this.age = age;
	}
}

Ahora vamos a crear nuestro objeto:


	Human father = new Human("Peter", true, 31);
	Human mother = new Human("Mary", false, 28);
	mother.parents = new HashSet<>();
	Human son = new Human("Paul", true, 7);
	son.parents = Set.of(father, mother);

Y ahora tratemos de representar el son objeto con la mayor precisión posible en formato JSON:

{
 "nombre": "Paul",
 "masculino": verdadero,
 "edad": 7,
 "padres": [
 {
   "nombre": "Pedro",
   "masculino": verdadero,
   "edad": 31,
   "padres" : nulo
 },
 {
   "nombre" : "María",
   "masculino" : falso,
   "edad" : 28,
   "padres" : nulo
 }
]
}

Comentarios en JSON

Todo aquí es exactamente igual que en Java. Hay dos tipos de comentarios: // y /*...*/. Espero no tener que recordarte en qué se diferencian.

Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION