0

Różnica JSON z posortowanymi kluczami — ignoruj ​​kolejność kluczy

Porównaj dwa ładunki JSON według struktury, a nie tekstu: zobacz każdy dodany, usunięty i zmieniony klucz na własnej ścieżce, całkowicie w przeglądarce.

Przetwarzanie... 0%

Wynik

Ta strona otwiera moduł sprawdzania różnic JSON z już włączoną opcją „sortuj klucze przed porównaniem”, załadowaną małym przykładem: rekord tej samej osoby zapisany dwukrotnie z kluczami w innej kolejności. Spójrz na wynik, a zobaczysz zero różnic, dokładnie tak, jak powinno być — zmiana kolejności kluczy nie zmienia znaczenia obiektu JSON.

Obiekt JSON jest z definicji nieuporządkowaną kolekcją par klucz/wartość. {"id":1,"name":"Ada"} i {"name":"Ada","id":1} opisują dokładnie te same dane. Jednak naiwne porównanie — na przykład wklejenie obu ładnie wydrukowanych ładunków do zwykłej różnicy tekstowej opartej na liniach — oznaczy prawie każdą linię jako zmienioną w momencie, gdy serializator jednej strony zdecydował się emitować pola w innej kolejności, ponieważ różnica tekstowa zawsze porównuje tylko znaki i linie, nigdy nie mając znaczenia.

To narzędzie pozwala uniknąć tej pułapki, przeglądając klucze każdego obiektu według nazwy, a nie według pozycji, więc kolejność kluczy w żadnym wypadku nie zwiedzie go — sortowanie po prostu sprawia, że gwarancja jest widoczna i daje czystą, uporządkowaną alfabetycznie listę, z którą można odczytać różnice. Edytuj dowolny obszar tekstowy i oglądaj na żywo aktualizację różnic; kiedy będziesz gotowy, porównaj tutaj swoje dwa własne dokumenty JSON zamiast przykładu.