Форматирование и приведение JSON к читаемому виду

Форматируйте JSON с отступом в 2 или 4 пробела либо табуляцией, сортируйте ключи и узнавайте точную строку и столбец ошибки. Работает в браузере.

Вывод

Работает полностью в вашем браузере. Ваши данные никуда не загружаются.

Похожие Инструменты

Просмотреть Все

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

Инструмент расставляет отступы в сжатом или неаккуратном JSON, чтобы его было удобно читать. Он использует строгий парсер по RFC 8259, поэтому для некорректного JSON показывает, где именно он ломается (строка, столбец и указатель на символ). Большие целые числа, например 64-битные ID, сохраняются в точности, без округления.

Как пользоваться Форматирование JSON

  1. Вставьте JSON в поле Исходный JSON (или нажмите Загрузить пример).
  2. Выберите Отступ: 2 пробела, 4 пробела или табуляция.
  3. Включите Сортировать ключи по алфавиту, если нужен упорядоченный порядок ключей.
  4. Нажмите Форматировать (результат также обновляется по мере ввода).
  5. Скопируйте результат кнопкой Копировать или сохраните через Скачать.

Пример

Ввод
{"id":12345678901234567890,"a":[1,{"b":null}]}
Вывод
{
  "id": 12345678901234567890,
  "a": [
    1,
    {
      "b": null
    }
  ]
}

Отступ 2 пробела; 20-значный ID сохранён без изменений.

Когда использовать Форматирование JSON

Подходит для чтения ответов API, конфигов и логов, для сравнения файлов с устойчивым порядком ключей и для поиска точного места синтаксической ошибки в JSON. JSON5 и JSONC (комментарии, завершающие запятые, ключи без кавычек) не поддерживаются — они считаются ошибками. Чтобы проверить данные по правилам (типы, обязательные поля), используйте проверку по JSON-схеме.

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

Ввод разбирает написанный вручную строгий JSON-парсер, который строит дерево с учётом позиций. Числа хранятся как исходный текст, поэтому 12345678901234567890 или 1.50e+10 выводятся без изменений — в отличие от JSON.parse, который превращает их в 64-битные числа с плавающей точкой. Затем дерево печатается с выбранным отступом; строки заново экранируются в каноническом виде (например, \u00e9 превращается в é). При включённой сортировке ключи на каждом уровне упорядочиваются по кодовым точкам Unicode. При синтаксической ошибке парсер останавливается на первом неверном символе и называет конкретную причину: лишняя запятая, одинарные кавычки, комментарий или пропущенная запятая.

Распространенные Случаи Использования

  • Приведение сжатого ответа API к читаемому виду перед отладкой
  • Нормализация конфигов с отсортированными ключами, чтобы diff был меньше
  • Поиск строки с пропущенной запятой в большом JSON-файле
  • Просмотр JSON с 64-битными ID без потери точности

Примечание по Безопасности

Всё выполняется локально в вашем браузере: вставленный код никуда не загружается.

Часто Задаваемые Вопросы

Почему JSON с комментариями не проходит?

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

Меняются ли большие числа?

Нет. Числа копируются как записаны, поэтому целые больше 2^53 сохраняют все цифры.

Что происходит с повторяющимися ключами?

Обе записи остаются в результате в исходном порядке. Проверка JSON показывает повторы как предупреждения.

Меняется ли порядок ключей?

Только если включить Сортировать ключи по алфавиту; иначе сохраняется исходный порядок.

Что сделать дальше

JSON в XML
Преобразуйте JSON в корректный XML: настраиваемый корневой элемент, атрибуты через ключи «@_», повторяющиеся элементы для массивов и необязательная XML-декларация. Бесплатно.
XML в JSON
Преобразуйте XML в JSON: атрибуты сохраняются под префиксом, повторяющиеся элементы становятся массивами, есть разбор чисел и логических значений и понятные ошибки синтаксиса.
JSON в TypeScript
Создавайте интерфейсы или псевдонимы типов TypeScript по образцу JSON: необязательные ключи, объединения с null и вложенные типы, выведенные из массивов. Бесплатно и приватно.
JSON в структуру Go
Превращайте JSON в структуры Go с экспортируемыми именами полей, тегами json, указателями для null и необязательным omitempty. Вложенные объекты и массивы. Бесплатно.
JSON в Python
Преобразуйте JSON в классы dataclass или TypedDict на Python с аннотациями типов, полями Optional и вложенными классами в порядке зависимостей. Бесплатно, в браузере.
Экранирование строк
Один инструмент для экранирования и обратного преобразования строк для JSON, JavaScript, HTML, XML, компонентов URL, регулярных выражений, SQL, CSS и аргументов оболочки.

Другие категории