Ordenador de claves JSON

Ordena claves de objetos JSON alfabéticamente con opciones recursivas y de profundidad

¿Qué es y cómo funciona?

Las claves JSON son técnicamente no ordenadas según la especificación — pero en la práctica, un orden de claves consistente hace que el JSON sea más fácil de leer, comparar y hacer diff. Cuando las claves aparecen en orden aleatorio entre dos versiones de un archivo de configuración, un git diff se convierte en ruido en lugar de señal.

Más allá de los git diffs, el JSON ordenado es útil para la serialización canónica (asegurando que dos objetos JSON con el mismo contenido produzcan la misma cadena para firma o caché) y para hacer navegables los documentos JSON grandes.

Casos de uso

Preguntas frecuentes

¿Define el spec JSON el orden de las claves?

No. La especificación JSON (RFC 8259) establece explícitamente que las claves de objeto no están ordenadas. El JSON ordenado es una cuestión de estilo y comparabilidad, no de corrección.

¿La ordenación afecta los elementos del array?

No. Los arrays están ordenados por definición. El ordenador solo ordena las claves de objeto; los elementos del array permanecen en su orden original.

¿Cómo maneja la ordenación los objetos anidados?

Recursivamente. Cada objeto a cada nivel de anidamiento tiene sus claves ordenadas.

¿Puedo ordenar por valor en lugar de por clave?

Ordenar JSON por valor no tiene un significado universal para los objetos. Para arrays de primitivos, la ordenación por valor está bien definida. Para objetos, solo la ordenación alfabética por claves es universalmente útil.

JSON

Formateador JSON · Minificador JSON · Validador JSON · JSON a CSV · JSON ↔ YAML · Aplanar JSON