Porównaj dwa pliki JSON
Aby porównać JSON, wklej oba dokumenty do A i B: narzędzie pokazuje każdą różnicę ze ścieżką, starą i nową wartością – dodaną, usuniętą, zmienioną lub ze zmienionym typem. Formatowanie i kolejność kluczy nie mają znaczenia.
Źródło: IETF – RFC 8259: The JavaScript Object Notation (JSON) Data Interchange Format (§ 4: obiekty są nieuporządkowane). Stan na: .
Jak to obliczamy
Porównanie JSON to zestawienie dwóch dokumentów według zawartości, a nie tekstu. Dwa pliki JSON mogą być inaczej sformatowane i mówić to samo. Narzędzie porównuje zawartość w Twojej przeglądarce i podaje każdą różnicę ze ścieżką w stylu JSONPath, na przykład $.adres.miasto.
Jak to działa
- Wklej stary JSON do pola A, a nowy do pola B.
- W razie potrzeby porównuj tablice bez względu na kolejność albo traktuj null i brak pola jako to samo.
- Tabela pokazuje każdą różnicę ze ścieżką, rodzajem i obiema wartościami.
Jak przebiega porównanie
- Obiekty: klucze są porównywane według nazwy, ich kolejność nie ma znaczenia (obiekty JSON są według RFC 8259 nieuporządkowane).
- Tablice: domyślnie miejsce po miejscu; na życzenie bez względu na kolejność, wtedy takie same elementy są ze sobą parowane.
- Wartości: 1 i 1.0 to ta sama liczba; zmiana z liczby na tekst jest zgłaszana jako zmiana typu.
- Ścieżki: $.a.b[0] oznacza pierwszy element b w a; klucze ze znakami specjalnymi stoją w nawiasach kwadratowych.
Ograniczenia
Wynik pokazuje różnice w zawartości. Aby porównać też tekst (formatowanie, kolejność), użyj „Porównywania tekstów”.
- Do 1 miliona znaków na dokument; tabela pokazuje najwyżej 500 różnic.
- Duże liczby powyżej 15 cyfr są odczytywane jako liczby zmiennoprzecinkowe, jak w JavaScripcie, i mogą zostać zaokrąglone.
Prywatność
Dokumenty nie opuszczają Twojej przeglądarki. Dalej: formatowanie JSON, porównywanie tekstów lub YAML na JSON.
Najczęściej zadawane pytania
Jak porównać dwa pliki JSON?
Wklej oba dokumenty JSON do pól A i B. Narzędzie wypisze każdą różnicę ze ścieżką, starą i nową wartością.
Czy kolejność kluczy ma znaczenie?
Nie. Obiekty JSON są nieuporządkowane; „a” przed „b” to to samo co „b” przed „a”.
Jak porównać tablice, których kolejność nie ma znaczenia?
Zaznacz „Porównuj tablice bez względu na kolejność”. Takie same elementy są wtedy parowane i pojawiają się tylko prawdziwe różnice.
Co oznacza ścieżka w tabeli?
Pokazuje, gdzie leży różnica: $.adres.miasto to pole „miasto” w obiekcie „adres”, $.tags[2] to trzeci element listy „tags”.
Czy mój JSON jest wysyłany?
Nie. Porównanie odbywa się w całości w Twojej przeglądarce.
Źródła i podstawa prawna
- IETF – RFC 8259: The JavaScript Object Notation (JSON) Data Interchange Format (§ 4: obiekty są nieuporządkowane)
- Goessner – JSONPath: XPath for JSON (Pfadschreibweise $.a.b[0])
- IETF – RFC 9535: JSONPath: Query Expressions for JSON
Stan na: · Zasady redakcyjne
Podobne narzędzia
- JSON formatter, walidator i minifikatorSprawdź JSON według RFC 8259: dokładna linia, kolumna i zrozumiały opis błędu. Formatowanie JSON, minifikacja, sortowanie kluczy – lokalnie w przeglądarce.
- Porównanie tekstów: znajdź różnice między dwoma tekstamiPorównanie tekstów online: zaznacz różnice między dwiema wersjami według wierszy, słów lub znaków i sprawdź procent podobieństwa. Za darmo i prywatnie.
- YAML na JSON: konwerter (i JSON na YAML)YAML na JSON i JSON na YAML zgodnie z YAML 1.2: listy, kotwice, bloki tekstu i komentarze. Błędy wskazują numer wiersza. W przeglądarce, bez wysyłania danych.
- Konwerter CSV na JSON (i JSON na CSV)Zamień CSV na JSON lub JSON na CSV online: separator wykrywany automatycznie, liczby i wartości logiczne z typem, polskie znaki bez zmian. W przeglądarce.
- Konwertuj JSON na TypeScriptJSON na TypeScript: wygeneruj typy, interfejsy lub schemat JSON z przykładowych danych, z polami opcjonalnymi. W przeglądarce, bez wysyłania.
- Formatowanie XMLFormatowanie XML, minifikacja i sprawdzanie z wierszem i kolumną błędu, widok drzewa, zapytania XPath oraz XML na JSON. W przeglądarce, bez wysyłania.
- Moje IP – jaki mam adres IP?Moje IP od razu: pokazuje Twój publiczny adres IP, rozpoznaje IPv4 lub IPv6 i wyjaśnia różnicę. Za darmo, bez rejestracji – adres IP nie jest zapisywany.
- Generator JSON-LDGenerator JSON-LD dla Schema.org: wypełnij artykuł, FAQ, produkt, firmę lokalną lub organizację i skopiuj gotowy kod z wbudowaną kontrolą błędów.
- Generator cron: tworzenie i wyjaśnianie wyrażeń cronGenerator cron i wyjaśnienie: zbuduj lub wklej wyrażenie, przeczytaj je prostym językiem i zobacz kolejne uruchomienia. Unix, Spring i Quartz, lokalnie.