JSON vergleichen: Diff von Struktur und Werten

Vergleichen Sie zwei JSON-Objekte nebeneinander in Echtzeit mit Syntaxprüfung, hierarchischem Diff und Formatierer.

Zwei JSON-Dokumente vergleichen: so entsteht der Diff

Das Tool parst beide JSON-Dokumente und durchläuft sie Schlüssel für Schlüssel: Jeder Pfad (etwa settings.theme) gilt als hinzugefügt, entfernt, geändert oder mit geändertem Typ. Die Reihenfolge der Schlüssel spielt keine Rolle, Arrays werden aber Position für Position verglichen.

Die Methode

  • Jeder Text wird mit dem Standard-JSON-Parser des Browsers gelesen. Bei einem Syntaxfehler (Komma am Ende, einfache Anführungszeichen, Kommentar) erscheint die Fehlermeldung und es findet kein Vergleich statt.
  • Objekte werden über die Vereinigung ihrer Schlüssel verglichen: Ein Schlüssel nur links gilt als „entfernt“, nur rechts als „hinzugefügt“. Werte auf beiden Seiten werden rekursiv verglichen.
  • Zwei unterschiedliche einfache Werte ergeben „geändert“; eine Zahl, die zur Zeichenkette wurde (1 und "1"), ergibt „Typ geändert“.
  • Arrays werden wie indizierte Objekte behandelt: Der Pfad tags.3 bezeichnet das 4. Element.

Beispiel

Mit den beiden Beispiel-Dokumenten findet das Tool 7 Unterschiede: appName, version, settings.theme, settings.notifications und settings.maxItems geändert (50 wird 100), settings.cacheEnabled und tags.3 ("ai") hinzugefügt. Der unveränderte Schlüssel active erscheint nicht.

Grenzen

  • Wird am Anfang eines Arrays ein Element entfernt, verschieben sich alle folgenden: ["a","b","c"] gegen ["b","c"] zeigt zwei Änderungen und eine Entfernung statt einer einzigen Entfernung.
  • Zahlen werden in doppelter Genauigkeit gelesen: Oberhalb von 9.007.199.254.740.991 können zwei verschiedene Ganzzahlen als gleich gelten. Vergleichen Sie lange IDs als Zeichenketten.
  • Kommt ein Schlüssel im selben Objekt zweimal vor, zählt nur der letzte Wert. 1.0 und 1 gelten als gleich.
  • Die Formatieren-Schaltfläche rückt beide Texte mit 2 Leerzeichen ein; der Vergleich läuft im Browser, es werden keine Daten gesendet.

Quellen und Stand: Das JSON-Format definiert RFC 8259 (Dezember 2017); Abschnitt 6 begrenzt die Interoperabilität von Ganzzahlen auf den Bereich ±(2⁵³ − 1) (geprüft am 14.10.2026).

Häufig gestellte Fragen

Spielt die Reihenfolge der Schlüssel beim Vergleich eine Rolle?

Nein. {"a":1,"b":2} und {"b":2,"a":1} gelten als identisch, weil das Tool Schlüssel über ihren Namen zuordnet. Auch RFC 8259 hält fest, dass die Reihenfolge der Objektmitglieder keine garantierte Bedeutung hat.

Warum zeigt ein umsortiertes Array so viele Unterschiede?

Arrays werden Position für Position verglichen. Fällt das erste Element weg, verschiebt sich jedes folgende: ["a","b","c"] gegen ["b","c"] ergibt zwei Änderungen und eine Entfernung.

Was bedeutet „Typ geändert“?

Derselbe Schlüssel enthält auf beiden Seiten Werte unterschiedlichen Typs, etwa links die Zahl 1 und rechts die Zeichenkette "1". Das ist eine häufige Fehlerquelle zwischen einer API und ihrem Client.

Warum wird mein JSON abgelehnt?

Das Tool verlangt strikte JSON-Syntax: doppelte Anführungszeichen, kein Komma nach dem letzten Element und keine Kommentare. Die Fehlermeldung des Browsers nennt meist die Position des fehlerhaften Zeichens.

Ist das Tool wirklich kostenlos?

Ja, alle Werkzeuge auf Kristools sind zu 100% kostenlos und ohne Registrierung zugänglich.

Sind meine Daten geschützt?

Ja. Die gesamte Verarbeitung erfolgt sicher und direkt in Ihrem Browser. Es werden keine persönlichen Daten an unsere Server gesendet.