Red de conocimiento informático - Conocimiento de la instalación - Salida formateada JSON

Salida formateada JSON

JSON.stringify() es el método típico para convertir objetos JavaScript a JSON. Muchos marcos de JavaScript usan JSON.stringify() internamente, como res.json() del marco Express y la serialización del cuerpo de Axios.

Sin embargo, de forma predeterminada, JSON.stringify() genera formato JSON sin espacios ni colores. Más adelante, usaremos un paquete npm común para colorear la salida.

El uso básico de JSON.stringify() es el siguiente:

Como puede ver, la salida usando JSON.stringify() es más legible.

También puede ingresar el espaciado de tabulación "\t" para formatear la salida.

El tercer parámetro de JSON.stringify se utiliza para controlar el espaciado. Es esto lo que proporciona una hermosa salida de cadena.

Permite dos tipos de parámetros: números y cadenas.

Si Espacio es de tipo Número, representa el número correspondiente de espacios que JSON.stringify colocará antes de cada clave. Se puede utilizar cualquier número entre 0 y 10 para la sangría.

Como alternativa, puedes utilizar cadenas para la sangría. Se permite un máximo de 10 caracteres. Si intenta ingresar más de 10 caracteres, solo se utilizarán los primeros 10 caracteres.

Para los marcos que no llaman a JSON.stringify() directamente, generalmente hay una opción para establecer el argumento del espacio en blanco. Por ejemplo, Express tiene una opción global de "espacios json" que le permite establecer espacios para todas las llamadas res.json().

Axios no tiene una opción explícita para formatear JSON, pero puedes manejar la serialización JSON tú mismo usando la opción transformRequest. La sintaxis clave es la siguiente:

Prettyjson formatea datos JSON en estilo YAML. Prettyjson solo funciona en la CLI; si envía la salida de Prettyjson como respuesta HTTP, no obtendrá los colores.

Aquí hay un ejemplo de impresión JSON desde Node.js usando Prettyjson:

Así es como funciona:

Deberías usar algo como lo anterior para crear los datos que desea resaltar sean más legibles.

Aquí tenemos un comentario adicional sobre el segundo argumento de JSON.stringify, sustituto, que podemos usar para transformar el resultado.

Permite dos tipos de parámetros: arrays y funciones.

Llamaremos a la función una vez para cada elemento, pero también puedes recorrer cada elemento y usar la lógica definida en la función en cada bucle.

Aquí tienes un ejemplo donde omitiré atributos cuyos valores no sean cadenas. En otras palabras, solo quiero mostrar elementos cuyos valores sean números.