Перейти к содержанию
TextArray
100% локально

Разница в формате JSON

Структурно сравните два документа JSON и просмотрите каждое добавленное, удаленное и измененное значение по его пути.

Входные данные
Изменен JSON
Выходные данные

Разница в формате JSON

Вставьте исходный JSON в первое поле и измененную версию во второе, и инструмент сообщит обо всех различиях по пути: + user.roles[2] = «admin» для добавленного значения, − user.legacyId для удаленного значения, ~ user.name: «Анна» → «Ева» для изменения. Сравнение является структурным, а не текстовым — оба документа анализируются и их значения сравниваются рекурсивно, поэтому переформатирование, отступы и порядок ключей объекта никогда не считаются различиями. Это именно то, в чем ошибка обычного текстового различия в JSON.

Используйте его, когда два ответа API должны совпадать, но не совпадают: промежуточный вариант по отношению к рабочей среде, вчерашняя полезная нагрузка по сравнению с сегодняшней, ответ до и после развертывания. Это так же полезно для смещения конфигурации (два экспортированных файла конфигурации, которые со временем разошлись) и для отладки сериализованного состояния, когда единственный измененный флаг скрывается в килобайтах вложенных объектов.

Элементы массива сравниваются по индексу, поэтому сдвинутый список отображается как серия изменений. Если порядок действительно не имеет значения (теги, списки разрешений), включите «Игнорировать порядок массива», и массивы сопоставляются как мультинаборы: сообщается только о действительно добавленных или удаленных элементах. «Показать неизмененные значения» дополнительно перечисляет все неизмененные пути, что превращает выходные данные в полную аннотированную опись документа.

Оба документа анализируются и сравниваются полностью в вашем браузере. Ничего не загружается, поэтому рабочие данные, токены и данные клиентов внутри вашего JSON остаются на вашем устройстве.

FAQ

Чем это отличается от текстового различия?
Текстовая разница сравнивает строки, поэтому переформатирование или изменение порядка ключей выглядят как изменения. Этот инструмент анализирует оба документа и структурно сравнивает значения — сообщается только о реальных различиях в данных.
Имеет ли значение порядок ключей объекта?
Нет. {"a":1,"b":2} и {"b":2,"a":1} идентичны. Объекты сравниваются по ключу, а не по положению.
Как сравниваются массивы?
По индексу: третий элемент оригинала сравнивается с третьим элементом измененного документа. Включите «Игнорировать порядок массива», чтобы вместо этого массивы сопоставлялись как мультинаборы, поэтому изменение порядка не учитывается как разница.
Что означают пути в выводе?
Точки опускаются в объекты, а скобки — в массивы — user.roles[2] — это третий элемент массива ролей внутри пользователя. Ключи, не являющиеся простыми идентификаторами, заключаются в скобки.
Загружен ли где-нибудь мой JSON?
Нет. Оба документа анализируются и сравниваются полностью в вашем браузере и никогда не покидают ваше устройство.