§

Вставьте JSON, который нужно отформатировать, проверить или минифицировать.

Парсинг, валидация и форматирование выполняются в вашем браузере встроенным парсером JSON.
§

Валидация

Ожидание ввода.
§

Output

text

Форматировщик JSON — основной инструмент для разбора API в российской экосистеме. Открытые API Тинькофф Банка, Сбербанк API, ЮKassa и СБП Банка России возвращают тела ответов и webhook-нагрузки в JSON; без читаемого вывода невозможно найти расхождение в подписи HMAC. Yandex Cloud Functions, VK Cloud Functions и SberCloud Function конфигурируются через Terraform с JSON-state, а 1С:Предприятие выгружает регламентированные отчёты для ФНС России и СФР в JSON-формате. Сервис Госуслуги через ЕСИА возвращает claim-объекты на OpenID-flow, инженеры Ozon и Wildberries отлаживают GraphQL-запросы к каталогу — всё это читается локально. Конфиденциальные поля (ИНН, СНИЛС, токены) остаются в браузере, что согласуется с требованиями 152-ФЗ и Роскомнадзора.

Что такое форматирование JSON?

JSON (JavaScript Object Notation) — это лёгкий текстовый формат обмена данными, определённый в RFC 8259 и ECMA-404. Документ JSON — это дерево из шести типов значений: object, array, string, number, boolean и null. Форматирование добавляет пробелы, чтобы человеку было удобно читать это дерево; минификация удаляет пробелы, чтобы машины могли быстрее передавать его по сети.

Как работает форматирование JSON?

Ваш ввод полностью обрабатывается в браузере с помощью встроенных функций JSON.parse и JSON.stringify. Основные шаги:

  1. Ввод считывается из текстового поля, и пробелы в начале и конце удаляются.
  2. Браузер разбирает его с помощью JSON.parse. Если ввод не является корректным JSON, парсер выбрасывает SyntaxError, который перехватывается и отображается с указанием строки и столбца, где он остановился.
  3. Когда ввод корректен, разобранное значение снова сериализуется с помощью JSON.stringify(value, null, indent), где indent — выбранный вами отступ (2 пробела, 4 пробела или символ табуляции).
  4. Для минификации JSON.stringify(value) вызывается без аргумента отступа, что даёт самую короткую корректную форму того же значения без незначащих пробелов.
  5. Результат записывается в текстовое поле только для чтения, а панель состояния сообщает либо Корректный JSON, либо точную ошибку разбора, чтобы вы могли исправить источник.

Зачем форматировать JSON этим инструментом?

  • Конфиденциальность: каждый этап разбора, форматирования и минификации происходит в вашем браузере. JSON никогда не попадает на наши серверы.
  • Мгновенная проверка: неправильно поставленные запятые, ключи без кавычек, одинарные кавычки и завершающие запятые сообщаются с точным указанием строки и столбца, чтобы вы могли сразу перейти к ошибке.
  • Готовый к ревью вывод: красиво напечатанный JSON с одинаковыми отступами даёт чистые диффы в код-ревью и читаемые файлы конфигурации.
  • Готовая к продакшену минификация: удаление незначащих пробелов уменьшает размер API-ответов, файлов манифеста и встроенных фикстур перед публикацией.

Каковы распространённые применения форматирования JSON?

Чтение и запись JSON встречаются во всём веб-разработке и инструментарии:

  • Отладка API: вставка сырого ответа из curl или панели сети, чтобы подтвердить структуру, найти опечатку в ключе или заметить пропущенную закрывающую скобку.
  • Чистка конфигов: повторное форматирование вручную правленных package.json, tsconfig.json или CI-манифестов, чтобы они проходили ревью и линтеры.
  • Чтение логов: переформатирование компактных строк application/json, чтобы каждое поле выровнялось друг под другом, а затем минификация перед вставкой в тикет.

Как выглядит пример форматирования JSON?

Если вставить {"id":42,"name":"Ada Lovelace","email":"ada@example.com","roles":["admin","engineer"]} и нажать ФОРМАТИРОВАТЬ с отступом в 2 пробела, текст развернётся на девять строк: каждое поле объекта и каждый элемент массива окажутся на отдельной строке. Нажатие МИНИФИЦИРОВАТЬ на отформатированном тексте побайтно сворачивает его обратно в ту же компактную строку.

Этот форматировщик JSON разбирает данные тем же движком, который использует ваш Node.js, Deno или браузер, и выдаёт результат, который можно вставлять прямо в код, конфигурации или логи.