JSON-Objektschlüssel alphabetisch mit rekursiver Option und Tiefenoptionen sortieren
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.
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.
Nein. Arrays sind per Definition geordnet. Der Sortierer sortiert nur Objektschlüssel; Array-Elemente bleiben in ihrer ursprünglichen Reihenfolge.
Rekursiv. Jedes Objekt auf jeder Verschachtelungstiefe hat seine Schlüssel sortiert.
Das Sortieren von JSON nach Wert hat für Objekte keine universelle Bedeutung. Für Arrays von Primitiven ist Wertsortierung möglich.
JSON-Formatierer · JSON-Minifier · JSON-Validator · JSON zu CSV · JSON ↔ YAML · JSON glätten