
Un aplanador JSON convierte un objeto JSON anidado en un objeto de un solo nivel cuyas claves son la ruta completa a cada valor, por lo que {"user":{"city":"Austin"}} se convierte en {"user.city":"Austin "}. Las matrices se aplanan de la misma manera, usando el índice como segmento de ruta: {"roles":["admin","editor"]} se convierte en {"roles.0":"admin","roles.1":"editor"}. El resultado es un mapa plano del valor de la ruta a la hoja sin ningún anidamiento restante.
El aplanamiento es la forma en que obtiene respuestas API profundamente anidadas y archivos de configuración en formatos que solo entienden pares clave-valor planos. Las columnas de hoja de cálculo, las variables de entorno, las claves de mensajes i18n punteadas, los almacenes de banderas de características y muchos canales de registro y análisis esperan un nivel de claves, y una ruta punteada como user.address.city es la forma estándar de transportar la estructura original a través de ellas. La operación inversa, desaplanar, reconstruye el objeto anidado y sus matrices a partir de esas claves punteadas, por lo que la transformación es un viaje de ida y vuelta sin pérdidas en ambas direcciones.
Esta herramienta se ejecuta completamente en su navegador. Analiza el JSON, lo recorre hasta los valores de hoja y serializa el resultado plano o anidado sin enviar nada a un servidor. No se carga, registra ni almacena nada que mantenga cargas útiles con tokens, ID o datos personales en su máquina, y la herramienta sigue funcionando sin conexión una vez que la página se ha cargado.
El aplanamiento intercambia la estructura por una forma que pueden transportar las hojas de cálculo, los codificadores de forma y las variables de entorno, y el viaje de ida y vuelta no tiene pérdidas en ambas direcciones, siempre que una cosa se cumpla: sus claves aún no deben contener el delimitador. Una clave denominada "nombre de usuario" aplanada con un punto es indistinguible de un objeto anidado, y el desaplanamiento la convertirá en una. Cambie el delimitador por algo que los datos no utilicen cuando eso sea un riesgo. Los índices de matriz se convierten en segmentos de ruta numéricos, por lo que items.0.id aborda el primer elemento, y un desaplanador tiene que decidir si una clave numérica significa una matriz o un objeto con claves numéricas. Los objetos vacíos y las matrices vacías se conservan explícitamente en lugar de eliminarse, ya que perderlos cambiaría el significado de un archivo de configuración.
Flatten convierte JSON anidado en claves de puntos. Unflatten reconstruye objetos y matrices anidados a partir de claves de puntos. Cargue la muestra para ver ambas direcciones.
Pegue un objeto anidado para aplanar o un objeto plano con claves punteadas para desaplanar. La entrada debe ser JSON válida; Los errores de análisis se informan con la posición exacta.
Elija el delimitador, generalmente un punto, y elija la notación de punto (roles.0) o corchete (roles[0]) para los índices de matriz. Mantenga la misma configuración para ambas direcciones para que coincida el viaje de ida y vuelta.
Presione el botón de acción, luego copie la salida a su portapapeles o descárguela como un archivo.json. El recuento de claves confirma cuántas hojas se produjeron.
Aplana un objeto anidado, luego desacopla el resultado y obtienes el original, incluidas matrices, nulos, booleanos y contenedores vacíos. Las dos operaciones son inversas exactas.
Los elementos de la matriz mantienen su índice en la ruta, por lo que el orden sobrevive al viaje de ida y vuelta. Elija notación de puntos (items.0.id) o notación de corchetes (items[0].id) para que coincida con el sistema que está alimentando.
Utilice un punto de forma predeterminada o cambie a otro separador cuando sus claves de destino ya contengan puntos. El mismo delimitador controla tanto aplanar como desaplanar.
Un objeto vacío o una matriz vacía se mantiene como un valor hoja en lugar de eliminarse silenciosamente, por lo que una configuración que se basa en una lista vacía aún realiza viajes de ida y vuelta correctamente.
Generate a JSON Schema from any JSON sample. Infers types, merges arrays of objects into one item schema, derives required fields, and detects date-time, email, uri, and uuid formats. Draft-07 and 2020-12 output. 100% client-side.
Sort the keys of a JSON object alphabetically, recursively through nested objects, with optional array sorting. Ascending or descending, minify or pretty. Client-side, no signup.
Generate TypeScript interfaces from any JSON sample. Infers nested types, merges arrays of objects into a single interface, marks nullable and missing keys optional, and emits clean exportable code. 100% client-side.
Convert JSON to clean, valid YAML instantly - configurable indentation and safe string quoting
0 comments
No comments yet. Be the first to share your thoughts!