JSON
JSON Sort Keys
Rekurencyjne alfabetyczne sortowanie kluczy obiektów w JSON — kolejność elementów tablic się nie zmienia, tylko klucze obiektów na każdym poziomie zagnieżdżenia.
JSON doesn't guarantee object key order, so two semantically identical documents can look different simply because their fields are in a different order. This tool recursively sorts object keys alphabetically at every nesting level, without touching array element order.
How to use it
- Paste JSON and its object keys are sorted alphabetically instantly, at every level of nesting.
- Pick ascending or descending order as needed.
- Array element order is left untouched — only object keys are sorted, not array values.
Common uses
- Bringing JSON into a canonical form before comparing it with git diff or a text diff tool.
- Normalizing a configuration file for a stable, predictable look in a repository.
- Preparing JSON before computing a content hash, when the result needs to be deterministic regardless of input field order.
Things to keep in mind
Sorting is byte-based (by Unicode code point) — all uppercase letters come before lowercase ones regardless of alphabet, unlike locale-aware sorting.
Only object keys are sorted — array element order carries semantic meaning in JSON, so it's never changed.
Artykuł o tym narzędziu: JSON Sort Keys: po co sortować klucze obiektu
Najczęstsze pytania
Dlaczego miałbym chcieć posortować klucze obiektu JSON alfabetycznie?
Sortowanie kluczy ułatwia sensowne porównanie dwóch plików JSON, ponieważ kolejność kluczy w przeciwnym razie zależy od tego, jak obiekt został pierwotnie zbudowany, mimo że nie wpływa na znaczenie.
Czy sortowanie kluczy zmienia znaczenie mojego JSON?
Nie. W JSON kolejność kluczy obiektu nie ma znaczenia semantycznego — sortowanie zmienia tylko wygląd danych, a nie to, co reprezentują.
Czy to narzędzie wysyła mój JSON gdzieś, aby go posortować?
Nie. Sortowanie odbywa się całkowicie w Twojej przeglądarce — nic nie jest wysyłane na serwer.
Czy klucze są sortowane rekurencyjnie na wszystkich poziomach zagnieżdżenia?
Tak, sortowanie obejmuje nie tylko klucze najwyższego poziomu, ale też klucze wszystkich zagnieżdżonych obiektów na dowolnej głębokości — w przeciwnym razie wynik byłby niespójny.
Czy język/lokalizacja wpływa na kolejność posortowanych kluczy?
Sortowanie bajtowe (według kodów Unicode) stawia wszystkie wielkie litery przed małymi niezależnie od alfabetu. Różni się to od sortowania z uwzględnieniem reguł językowych, które porządkuje litery „po ludzku" — dla większości technicznych kluczy różnica jest niezauważalna, ale warto o niej pamiętać przy nazwach spoza alfabetu łacińskiego.