JSON Compare / Diff + Patch

Эки JSON документти браузерде семантикалык түрдө салыштырып, айырманы patch'ка айлантыңыз.

Жүктөө да, серверге кайрылуу да жок. Массивди эске алган салыштыруу режимдери, path rule'лар жана сандык чыдамдуулук менен ызы-чууну азайтыңыз.

Браузердин ичинде гана иштейт, серверге жүктөлбөйт
Массивди эске алган режимдер текшерүү ызы-чуусун азайтат
JSON Patch жана JSON Merge Patch экспорттойт
Баары браузер сессияңыздын ичинде калат. Эч нерсе жүктөлбөйт.

Сунушталган иш агымы

  1. Ыңгайлуу киргизүү үчүн JSON Formatter же JSON Key Sorter менен алгач JSON'ду иреттеп же тазалап алыңыз.
  2. Сол жана оң JSON документтерин чаптаңыз же жүктөңүз, анан Compare басыңыз.
  3. Текшерүүгө ылайык келген массив режими, ачкычтар, tolerance жана path rule'ларды тандаңыз.
  4. Жыйынтыкты, өзгөргөн жолдорду, даракты жана экспорттоого боло турган patch чыгышын карап чыгыңыз.

Үлгү

Бул үлгүдө кайра иреттелген массивдер, убакыт белгисинин өзгөрүшү, майда floating-point айырмачылыктары жана бир кошулган элемент match keys, tolerance жана path rule'лар менен кантип кыскартыларын көрөсүз.

Мурун

Киргизүү
{
  "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
  }
}

Кийин

Киргизүү
{
  "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
  }
}

Үлгү эмнени көрсөтөт

Бул үлгүдө кайра иреттелген массивдер, убакыт белгисинин өзгөрүшү, майда floating-point айырмачылыктары жана бир кошулган элемент match keys, tolerance жана path rule'лар менен кантип кыскартыларын көрөсүз.

Кантип салыштыруу керек

  1. Сол жана оң JSON документтерин чаптаңыз же жүктөңүз.
  2. Strict, ignore order, multiset же key(s) боюнча дал келтирүүнү тандап, керек болгон path rule'ларды кошуңуз.
  3. Салыштырууну иштетиңиз же кыска жолду колдонуңуз. Эгер тек гана парстоо текшерилсин десеңиз, адегенде Validate басыңыз.
  4. Аяктаганда өзгөргөн жолдорду, patch'ты, merge patch'ты же отчетту көчүрүп же жүктөп алыңыз.

Эмне кылса болот

  • JSON'ду сап-сап эмес, семантикалык түрдө салыштырат.
  • id, sku же code сыяктуу ачкыч(тар) боюнча массив элементтерин дал келтирет.
  • Жолдорду четке кагат, жолдорду тандайт же ар бир жол үчүн өзүнчө салыштыруу эрежелерин колдонот.
  • Сандык чыдамдуулук менен майда floating-point айырмаларын жумшартат.
  • JSON Patch, JSON Merge Patch, өзгөргөн жолдор жана Markdown отчетун экспорттойт.
  • Өзгөрүүсүз калган түйүндөрдү кыскартып, тиешелүү жолго түз өтөт.

Салыштыруу эрежелери жана чыгыш

  • Иштөө толугу менен браузерде жүрөт. Эч нерсе жүктөлбөйт.
  • Strict, ignore-order, multiset жана match-by-key массив режимдери колдоого алынат.
  • Path rule'лар ignore, strict, ignore-order, multiset, match-keys жана tolerance'ты колдойт.
  • Сандык чыдамдуулук сан үчүн гана колдонулат.
  • Керек болсо комментарийлер парсинг алдында алынып салынышы мүмкүн.
  • Чоң киргизүүлөр summary-first түрүндө көрсөтүлөт жана auto-compare'ди өчүрүшү мүмкүн.

Көп берилүүчү суроолор

Массивдеги объекттерди ачкыч боюнча салыштырса болобу?

Ооба. Match by key(s) колдонуп, id же sku сыяктуу ачкычтарды көрсөтүңүз. Эрежени ар бир жол үчүн да өзгөртө аласыз.

Timestamp же request ID'лерди кантип четке кагам?

Ignore paths'ка кошуңуз же өзгөчөлүк бир гана subtree'ге таасир этсин десеңиз, path rule колдонуңуз.

Кээ бир бөлүктөрдө массив тартибин сактап, башкаларында эске албасам болобу?

Ооба. Path rule аркылуу ignore-order, multiset же match-keys'ти керек болгон жерде гана колдоно аласыз.

Комментарийлери бар JSON колдойбу?

Стандарттуу JSON комментарийлерге жол бербейт. JSONC түрүндөгү киргизүүнү кабыл алуу керек болгондо гана парстын алдында комментарийлерди алып салыңыз.

Маалымат серверге жүктөлөбү?

Жок. Салыштыруу, нормалдаштыруу жана экспорттун баары браузериңизде жергиликтүү иштейт.

Эмнени экспорттой алам?

JSON Patch, JSON Merge Patch, өзгөргөн жолдор жана Markdown отчету.