Сравнить структуру и значения JSON
Различия в значениях и структуре данных.
Результат
Добавьте данные и выполните обработку. Результат появится здесь.
Как пользоваться
- Добавьте исходные данные в редактор.
- Добавьте два документа JSON и выполните сравнение.
- Проверьте результат и сохраните файл на устройство.
Пример
Изменение настройки
До: {"count":2}. После: {"count":3}.Сравните документы.
Различие по ключу count: прежнее значение 2, новое 3.
Форматы и ограничения
Проверьте изменения конфигурации или ответа API, даже если форматирование и порядок ключей отличаются. Массивы сравниваются по индексам.
- На входе
- Вставленный JSON
- Результат
- JSON
Отчёт по добавленным, удалённым и изменённым значениям и их путям.
- До 200 000 символов в каждом поле, глубина до 100 уровней.
- До 100 000 узлов и 10 000 различий; числа с потерей точности отклоняются.
Порядок ключей объекта игнорируется, массивы сравниваются по индексам. Отчёт не является исполняемым JSON Patch.
Обработка выполняется на вашем устройстве. Файлы и введённые данные не отправляются серверу; после обновления страницы редактор сбрасывается.
Обработка выполняется в памяти браузера. Файлы и текст не отправляются на сервер; сохраните результат до обновления страницы. До 200 000 символов в каждом поле, глубина до 100 уровней и до 10 000 различий. Числа, которые не представимы без потери точности, отклоняются: передавайте их строками. Результат — отчёт, а не исполняемый JSON Patch.
Проверить тип цены и порядок меток в ответе API
Первый ответ содержит цену 250 как число и метки «новинка», «хит». Во втором ключи объекта переставлены, цена записана строкой «250», а метки идут в обратном порядке. Сравнение покажет три изменения: тип и значение по пути /цена, а также значения /метки/0 и /метки/1.
Порядок ключей объекта не создаёт отличий, но порядок массива значим: элементы сравниваются по индексам. Это полезно для очереди этапов и списка приоритетов. Для массива товаров с собственными ID инструмент не ищет соответствие по полю ID; перестановка элементов может дать много изменённых путей.
Добавленные и удалённые поля отличайте от существующего значения null. Отчёт не является исполняемым JSON Patch и не обновляет ответ API. В каждом поле допускаются 200 000 символов, глубина до 100 уровней и до 10 000 различий; числа с потерей точности вызывают отказ.
- Вставьте прежний ответ слева, новый справа.
- Просмотрите изменение /цена и проверьте требуемый API тип.
- Проверьте, должен ли порядок массива меток изменяться.
- Извлеките нужное поле отдельно; после правок повторите сравнение.
Сверьте тип цены с контрактом получателя, а порядок меток — с назначением списка. Проверьте весь отчёт: отсутствие отличий не подтверждает корректность обоих документов.
Вопросы об инструменте
Считается ли перестановка ключей изменением?
Нет. Для объекта важны ключи и значения, а не порядок их записи.
Можно ли сравнить большие целые числа без потери?
Числа с небезопасной точностью отклоняются. Передавайте такие идентификаторы строками.
Как сравниваются элементы массивов?
По индексам, начиная с нуля. Элементы не сопоставляются по полю id или содержимому, поэтому вставка в начало может дать несколько изменений последующих позиций.
Считаются ли строка "1" и число 1 одинаковыми?
Нет. Сравниваются и тип, и значение. Замена строкового значения на числовое отмечается как изменение.
Что означает путь /items/0/name в отчёте?
Это поле name первого элемента массива items. Пустой путь обозначает корень; внутри имён ключей ~ записывается как ~0, а / — как ~1.
Какие ограничения есть у структурного сравнения?
В каждом поле допускается до 200 000 символов; проверка ограничивает глубину до 100 и число узлов до 100 000. Если различий больше 10 000, данные нужно разделить на части.