Comparare JSON / Diff + Patch

Compară semantic două documente JSON în browser și transformă diferența într-un patch.

Fără upload, fără dus-întors la server. Redu zgomotul cu moduri de comparare care țin cont de array-uri, reguli de cale și toleranță numerică.

Procesare doar în browser, fără încărcare pe server
Modurile care țin cont de array reduc zgomotul la verificare
Exportă JSON Patch și JSON Merge Patch
Totul rămâne în sesiunea ta de browser. Nimic nu este încărcat.

Flux de lucru recomandat

  1. Curăță sau sortează JSON-ul mai întâi cu JSON Formatter sau JSON Key Sorter când vrei input consecvent.
  2. Lipește sau încarcă documentele JSON din stânga și dreapta, apoi rulează Comparare.
  3. Alege modul pentru array, cheile de potrivire, toleranța și regulile de cale potrivite pentru verificare.
  4. Verifică rezumatul, căile modificate, arborele și ieșirea patch exportabilă.

Exemplu

Acest exemplu arată cum array-urile reordonate, schimbările de timestamp, diferențele mici de virgulă mobilă și un element adăugat pot fi restrânse cu chei de potrivire, toleranță și reguli de cale.

Before

Input
{
  "orderId": "A-1001",
  "updatedAt": "2026-04-16T08:00:00Z",
  "customer": {
    "name": "Acme Corp",
    "tags": ["vip", "beta"]
  },
  "items": [
    {
      "sku": "A-1",
      "qty": 2,
      "price": 10
    },
    {
      "sku": "B-2",
      "qty": 1,
      "price": 4.5
    }
  ],
  "summary": {
    "currency": "USD",
    "total": 24.5
  }
}

After

Input
{
  "orderId": "A-1001",
  "updatedAt": "2026-04-16T08:05:00Z",
  "customer": {
    "name": "Acme Corporation",
    "tags": ["beta", "vip"]
  },
  "items": [
    {
      "sku": "B-2",
      "qty": 1,
      "price": 4.5
    },
    {
      "sku": "A-1",
      "qty": 2,
      "price": 10.0001
    },
    {
      "sku": "C-3",
      "qty": 1,
      "price": 7
    }
  ],
  "summary": {
    "currency": "USD",
    "total": 24.5001
  }
}

Ce demonstrează exemplul

Acest exemplu arată cum array-urile reordonate, schimbările de timestamp, diferențele mici de virgulă mobilă și un element adăugat pot fi restrânse cu chei de potrivire, toleranță și reguli de cale.

Cum să compari

  1. Paste or upload the left and right JSON documents.
  2. Choose strict, ignore order, multiset, or match by key(s), then add any path rules you need.
  3. Run Compare or use the shortcut. Validează first if you only want to check parsing.
  4. Copy or download the changed paths, patch, merge patch, or report when you are done.

Ce poți face

  • Compară JSON-ul semantic, nu linie cu linie.
  • Potrivește elementele din array după chei precum id, sku sau code.
  • Ignoră căi, selectează căi sau aplică reguli de comparare pe cale.
  • Folosește toleranță numerică pentru a netezi diferențele mici de virgulă mobilă.
  • Exportă JSON Patch, JSON Merge Patch, căile modificate și un raport Markdown.
  • Restrânge nodurile neschimbate și sari direct la calea relevantă.

Reguli de comparare și ieșire

  • Processing runs entirely in the browser. Nothing is uploaded.
  • Strict, ignore-order, multiset, and match-by-key array modes are supported.
  • Reguli de cale support ignore, strict, ignore-order, multiset, match-keys, and tolerance.
  • Numeric tolerance is applied to numbers only.
  • Comments can be stripped before parse when needed.
  • Large inputs use summary-first rendering and can disable auto-compare.

FAQ

Pot compara array-uri de obiecte după cheie?

Da. Folosește potrivirea după cheie și listează chei precum id sau sku. Poți suprascrie regula și pe cale.

Cum ignor timestampurile sau ID-urile de cerere?

Adaugă-le la căile ignorate sau folosește o regulă de cale când vrei ca excepția să se aplice doar unui singur subarbore.

Pot păstra ordinea array-ului pentru unele părți și să o ignor pentru altele?

Da. Folosește reguli de cale pentru a seta ignore-order, multiset sau match-keys doar unde ai nevoie.

Acceptă JSON cu comentarii?

JSON-ul standard nu permite comentarii. Activează eliminarea comentariilor înainte de analiză doar când trebuie să accepți input în stil JSONC.

Se încarcă ceva pe un server?

Nu. Compararea, normalizarea și exportul au loc local, în browser.

Ce pot exporta?

JSON Patch, JSON Merge Patch, changed paths, and a Markdown report.