JSON-Schlüssel-Sortierer

JSON-Objektschlüssel alphabetisch mit rekursiver Option und Tiefenoptionen sortieren

Was ist das und wie funktioniert es?

JSON-Schlüssel sind laut Spezifikation technisch ungeordnet — aber in der Praxis macht eine konsistente Schlüsselreihenfolge JSON leichter lesbar, vergleichbar und diff-fähig. Wenn Schlüssel in zufälliger Reihenfolge zwischen zwei Versionen einer Konfigurationsdatei erscheinen, wird ein git diff zum Rauschen statt zum Signal.

Über git Diffs hinaus ist sortiertes JSON nützlich für kanonische Serialisierung, zur Durchsetzung von Stilrichtlinien und für die Navigation in großen JSON-Dokumenten.

Anwendungsfälle

Häufige Fragen

Definiert die JSON-Spezifikation die Schlüsselreihenfolge?

Nein. RFC 8259 stellt klar, dass Objektschlüssel ungeordnet sind. Sortiertes JSON ist eine Frage des Stils und der Diff-Fähigkeit, nicht der Korrektheit.

Beeinflusst das Sortieren Array-Elemente?

Nein. Arrays sind per Definition geordnet. Der Sortierer sortiert nur Objektschlüssel; Array-Elemente bleiben in ihrer ursprünglichen Reihenfolge.

Wie geht das Sortieren mit verschachtelten Objekten um?

Rekursiv. Jedes Objekt auf jeder Verschachtelungstiefe hat seine Schlüssel sortiert.

Kann ich nach Wert statt nach Schlüssel sortieren?

Das Sortieren von JSON nach Wert hat für Objekte keine universelle Bedeutung. Für Arrays von Primitiven ist Wertsortierung möglich.

JSON

JSON-Formatierer · JSON-Minifier · JSON-Validator · JSON zu CSV · JSON ↔ YAML · JSON glätten