Сравнение JSON 🔒 Работает локально в браузере — ничего не загружается.

Сравните два JSON-документа и увидьте изменения.

Об этом инструменте

Когда меняется конфиг, ответ API или сохранённая фикстура, быстрее всего понять, что случилось, — сделать диф. Вставьте сюда JSON до и после и получите чёткий список с путями: какие ключи добавлены, какие удалены и какие значения изменились — со старым и новым значением рядом. Вложенные объекты и массивы обходятся рекурсивно, поэтому изменение в глубине указывается точно.

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

Частые вопросы

Важен ли порядок ключей в моём JSON?

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

Важен ли порядок элементов в массиве?

Да. Массивы сравниваются поэлементно по индексу, поэтому вставка или перестановка элемента сдвигает все последующие и отображается как множество изменений, а не как аккуратный «перемещённый» diff.

Отправляется ли мой JSON на сервер для сравнения?

Нет. Оба документа разбираются и сравниваются полностью в браузере — ничего не отправляется.

Что означают счётчики +, - и ~?

+ считает ключи и элементы, которые есть только в JSON B (добавлены), - считает те, что есть только в A (удалены), а ~ считает значения, присутствующие в обоих, но изменённые.

Что произойдёт, если одна из сторон окажется невалидным JSON?

Инструмент указывает, какая сторона (A или B) не разобралась, и переходит точно к строке и столбцу синтаксической ошибки вместо общего сообщения об ошибке.