Diff i porównanie JSON

Porównaj dwa dokumenty JSON i wyróżnij dodane, usunięte i zmienione ścieżki kluczy.

Ładowanie narzędzia…

Diff i porównanie JSONWklej dwa dokumenty JSON obok siebie, a to narzędzie wykona porównanie strukturalne, klucz po kluczu, zamiast zwykłego porównania wierszy, dzięki czemu przestawione klucze i spacje nigdy nie tworzą fałszywych zmian. Każda różnica jest zgłaszana według jej dokładnej ścieżki, takiej jak user.name lub items[0], i oznaczana jako dodana, usunięta lub zmieniona. Wszystko jest analizowane i porównywane w całości w Twojej przeglądarce, więc Twoje dane nigdy nie opuszczają urządzenia.

Czym jest Diff i porównanie JSON?

JSON Diff to bezpłatne narzędzie działające w przeglądarce, które znajduje semantyczne różnice między dwiema wartościami JSON. Zamiast porównywać tekst wiersz po wierszu, przechodzi przez oba drzewa i dopasowuje klucze według nazwy, a elementy tablic według indeksu, zgłaszając każdą zmianę za pomocą ścieżki z kropkami, takiej jak config.server.port lub list[2]. Programiści backendu i API używają go, aby dokładnie zobaczyć, co zmieniło się między dwiema odpowiedziami API, plikami konfiguracyjnymi lub danymi testowymi, podczas gdy inżynierowie QA i analitycy danych używają go, aby potwierdzić, że transformacja lub migracja dała oczekiwany wynik. Wybierz styl Symbole, aby odczytywać zmiany jako wiersze + / - / ~, lub styl Słowa, aby oznaczać je jako dodane, usunięte i zmienione. Przycisk Zamień odwraca lewe i prawe dane wejściowe, dzięki czemu możesz zobaczyć różnicę z obu kierunków.

Jak używać Diff i porównanie JSON

  1. Wklej oryginalny JSON do pola Lewe (oryginał).
  2. Wklej JSON, z którym chcesz porównać, do pola Prawe (zmienione).
  3. Odczytaj różnicę w bloku Wynik, gdzie każdy wiersz pokazuje zmienioną ścieżkę i wartość.
  4. Użyj ustawienia Styl, aby przełączać się między symbolami + / - / ~ a słowami dodane / usunięte / zmienione.
  5. Kliknij Zamień, aby odwrócić obie strony, lub Kopiuj, aby pobrać pełny raport różnic.

Przykłady

Pojedyncza wartość się zmieniła

Wejście

Lewe: {"name":"Ada","age":30}
Prawe: {"name":"Ada","age":31}

Wyjście

~ age: 30 -> 31

Jeden klucz dodany i jeden usunięty

Wejście

Lewe: {"a":1,"b":2}
Prawe: {"a":1,"c":3}

Wyjście

- b: 2
+ c: 3

Przestawione klucze są identyczne

Wejście

Lewe: {"x":1,"y":2}
Prawe: {"y":2,"x":1}

Wyjście

Brak różnic - oba dokumenty są jednakowe.

Najczęściej zadawane pytania

Czy mój JSON jest wysyłany na serwer?
Nie. Oba dokumenty są analizowane i porównywane w całości w Twojej przeglądarce za pomocą procedury głębokiego porównania działającej na Twoim urządzeniu. Nic nie jest przesyłane, a narzędzie działa również w trybie offline.
Czym to się różni od zwykłego porównania tekstu?
Porównanie tekstu zestawia wiersze, więc ponowne formatowanie lub przestawianie kluczy wygląda jak zmiana. To narzędzie porównuje przeanalizowaną strukturę, dopasowując klucze obiektów według nazwy, a elementy tablic według pozycji, więc zgłaszane są tylko rzeczywiste różnice semantyczne.
Czy kolejność kluczy ma znaczenie?
Nie. Dwa obiekty z tymi samymi kluczami i wartościami są traktowane jako równe, niezależnie od kolejności, w jakiej klucze się pojawiają. Elementy tablic są jednak porównywane według indeksu, więc przestawienie tablicy liczy się jako zmiana.
Co oznacza każdy wiersz?
Dodane ścieżki istnieją tylko po prawej, usunięte ścieżki tylko po lewej, a zmienione ścieżki mają różne wartości po każdej stronie. W stylu Symbole pojawiają się jako +, - i ~; w stylu Słowa są zapisane słownie.
Co się stanie, jeśli mój JSON jest nieprawidłowy?
Jeśli jedna ze stron nie zostanie przeanalizowana, notatka o błędzie wskaże, która strona (lewa lub prawa) jest nieprawidłowa, abyś mógł ją poprawić. Różnica aktualizuje się automatycznie, gdy obie strony zostaną poprawnie przeanalizowane.

Powiązane narzędzia