JSON-Vergleich
Vergleiche zwei JSON-Dokumente nach Struktur und ignoriere Key-Reihenfolge und Formatierung
100 % kostenlos. Läuft vollständig in deinem Browser: deine Dateien und Daten verlassen dein Gerät nie, und es wird nichts auf einen Server hochgeladen.
Über dieses Tool
JSON mit einem gewöhnlichen Text-Diff zu vergleichen erzeugt viel Rauschen. Ordne ein paar Keys um, rück einen Block neu ein oder wechsle von Tabs zu Spaces, und ein zeilenbasiertes Tool meldet Dutzende Unterschiede, obwohl die Daten unverändert sind. Dieses Tool parst beide Dokumente und vergleicht die resultierenden Werte, Key-Reihenfolge und Formatierung werden also ganz ignoriert und du siehst nur, was wirklich abweicht – welche Keys hinzugefügt, welche entfernt und welche Werte geändert wurden.
So verwendest du dieses Tool
- Füge das Original-JSON links einJedes gültige JSON funktioniert: ein Objekt, ein Array oder sogar ein nackter Wert.
- Füge die geänderte Version rechts einIst eine Seite ungültig, bekommst du die genaue Zeile und Spalte statt eines Zeichen-Offsets.
- Lies die Zusammenfassungs-ZählerHinzugefügt, entfernt, geändert und unverändert werden getrennt gezählt. Klicke eines davon, um diese Kategorie ein- oder auszublenden.
- Arbeite die Pfade durchJede Zeile zeigt einen Pfad wie user.roles[0] mit dem Wert beider Seiten, eingerückt nach Nesting-Tiefe.
- Kopiere die UnterschiedeEin Button kopiert nur die Änderungen als Klartext, bereit für eine Commit-Message oder einen Bug-Report.
Warum es nutzen
- Ignoriert Key-Reihenfolge, zwei Objekte mit denselben Daten vergleichen also als identisch.
- Ignoriert Whitespace und Einrückung ganz – nur Werte werden verglichen.
- Meldet eine Typänderung als einen Unterschied statt sie in Dutzende Adds und Removes aufzufächern.
- Gibt die genaue Zeile und Spalte, wenn JSON nicht parst, statt einer rohen Zeichenposition.
- Filtert nach Kategorie, du kannst unveränderte Zeilen ausblenden und dich auf das konzentrieren, was sich bewegt hat.
- Läuft vollständig in deinem Browser, das zählt, wenn das JSON eine API-Antwort mit echten Daten ist.
Häufige Anwendungen
- Prüfen, was sich zwischen zwei API-Antworten geändert hat.
- Eine Config-Datei vor und nach einem Deployment vergleichen.
- Eine JSON-Fixture-Änderung in einem Pull Request reviewen.
- Verifizieren, dass eine Datenmigration dieselbe Struktur erzeugt hat.
- Debuggen, warum zwei Umgebungen sich unterschiedlich verhalten, indem du ihre Einstellungen diffst.
Tipps für bessere Ergebnisse
- Nutze den Format-Button auf einem der Panes zum Pretty-Print mit sortierten Keys – das macht die zwei Seiten nebeneinander viel leichter lesbar.
- Schalte den „gleich“-Filter aus, um dich rein auf Unterschiede zu konzentrieren. Er ist deshalb standardmäßig aus.
- Zeigt ein Array weit mehr Änderungen, als du erwartest, prüfe, ob ein Item nahe am Start eingefügt wurde. Arrays werden nach Position verglichen.
- Für einen echten Text-Level-Vergleich – Whitespace, Zeilenenden, Reihenfolge – nutze stattdessen den Diff-Checker.
Fehler, die du vermeiden solltest
- Einen Text-Diff für JSON nutzen und dann Unterschieden hinterherjagen, die nur Formatierung sind.
- Erwarten, Arrays nach Inhalt gematcht zu bekommen. Ein Item oben einzufügen verschiebt jeden späteren Index, alles danach liest sich also als geändert.
- Annehmen, null und ein fehlender Key seien dasselbe. Sie sind unterschiedlich, und beide werden hier deutlich gemeldet.
- JavaScript-Objektliterale statt JSON einfügen. Ungequotete Keys, einfache Anführungszeichen und Trailing Commas sind kein gültiges JSON.
Häufig gestellte Fragen
Ein Text-Diff vergleicht Zeilen. Dieses parst beide Dokumente und vergleicht die tatsächlichen Werte, umgeordnete Keys und andere Einrückung werden also nicht als Änderungen gemeldet. Für JSON ist das fast immer, was du willst.
Nein. {"a":1,"b":2} und {"b":2,"a":1} werden als identisch gemeldet, weil sie in JSON dasselbe Objekt beschreiben. Brauchst du reihenfolge-sensitiven Vergleich, nutze den Diff-Checker.
Position für Position – Index 0 gegen Index 0 und so weiter. Das ist vorhersehbar, heißt aber, ein Item nahe am Start einzufügen zeigt jedes spätere Item als geändert. Array-Items nach Inhalt zu matchen bräuchte einen Key, den die Daten vielleicht nicht haben.
Sie zeigt, wo im Dokument der Unterschied sitzt. user.roles[0] heißt das erste Element des roles-Arrays im user-Objekt. Die Wurzel des Dokuments wird als (root) gezeigt.
Nein. Parsen und Vergleich passieren beide in deinem Browser. Nichts geht an einen Server, das zählt, wenn du API-Antworten diffst, die echte Kundendaten enthalten.
Du bekommst eine Meldung mit Zeile und Spalte, an der das Parsen scheiterte. Das ist nützlicher als die native Browser-Meldung, die einen Zeichen-Offset zitiert, den niemand in einem eingefügten Dokument findet.
Ja. Objekte, Arrays und sogar nackte Werte wie ein String oder eine Zahl funktionieren alle.
Ja, und es meldet sie als eine einzige Änderung. Geht ein Wert von einem Objekt zu einem Array, siehst du eine Zeile statt jeden Key als entfernt und jedes Element als hinzugefügt.
Nein. Ein Key mit einem null-Wert ist anders als ein Key, der fehlt, und die zwei werden getrennt gemeldet – als „geändert“ bzw. „entfernt“.
Kein festes Limit, sehr große Dokumente nutzen aber Browserspeicher und brauchen länger zum Rendern. Dateien von ein paar Megabyte sind typischerweise in Ordnung.
Er pretty-printet dieses Pane mit Zwei-Space-Einrückung und sortiert die Keys alphabetisch. Der Vergleich ignoriert Key-Reihenfolge schon, Sortieren macht die zwei Seiten aber weit leichter nebeneinander lesbar.
Ja, völlig kostenlos ohne Anmeldung und ohne Limits.
Andere suchen auch nach
- json compare online kostenlos
- json compare ohne anmeldung
- kostenloser json compare im browser
- kostenloser json compare online
- json compare ohne upload
- bester kostenloser json compare