powered by olehstudio.pro

JSON
форматтер

Форматирование, проверка и сжатие JSON с подсветкой синтаксиса и точным указанием строки с ошибкой.

Исходный JSON0 симв.
Результат—
Вставьте JSON слева — результат появится здесь

Что такое JSON

JSON (JavaScript Object Notation) — текстовый формат обмена данными, который стал стандартом де-факто для веб-разработки. Практически любой современный API отдаёт ответы именно в нём, а конфигурационные файлы вроде package.json или composer.json используют тот же синтаксис.

Формат придумал Дуглас Крокфорд в начале двухтысячных как альтернативу громоздкому XML. Синтаксис заимствован из JavaScript, но JSON не привязан к языку: библиотеки для работы с ним есть везде — от Python до Rust.

Типы данных и синтаксис

ТипПримерПримечание
Объект{"key": "value"}Ключи только в двойных кавычках
Массив[1, 2, 3]Элементы любого типа
Строка"текст"Только двойные кавычки
Число42, -3.14, 1e5Без ведущих нулей и суффиксов
Логическийtrue, falseСтрочными буквами
Пустое значениеnullНе undefined и не None

Ошибки, которые встречаются чаще всего

Форматтер показывает не только текст ошибки, но и точную строку с позицией символа — это сильно ускоряет поиск проблемы в большом файле.

Возможности инструмента

Форматированный или сжатый

Отформатированный JSON с отступами нужен человеку: его читают в редакторе, правят руками, сравнивают в системе контроля версий. Сжатый вариант предназначен для машин — он занимает на 15–30 % меньше места и быстрее передаётся.

На практике держите конфиги отформатированными, а ответы API отдавайте сжатыми. Впрочем, при включённом gzip разница в размере становится небольшой, поэтому многие сервисы оставляют читаемый формат и в продакшене.

JSON и JSON5: в чём разница

Ограничения строгого JSON раздражают разработчиков, поэтому появились расширения. JSON5 разрешает комментарии, одинарные кавычки, ключи без кавычек и запятые в конце. Формат JSONC (JSON with Comments) используется в настройках VS Code.

Важно понимать: это отдельные форматы. Стандартный парсер их не примет, и наш инструмент проверяет соответствие именно классическому JSON по спецификации RFC 8259.

Безопасность

Разбор и форматирование выполняются встроенным парсером браузера прямо на вашем устройстве. Данные не отправляются на сервер и нигде не сохраняются — поэтому через инструмент можно безопасно прогонять ответы API с токенами, конфиги и внутренние документы.

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

Почему мой JSON не проходит проверку?
Чаще всего дело в лишней запятой после последнего элемента, одинарных кавычках или ключах без кавычек. Всё это допустимо в JavaScript, но запрещено в JSON. Инструмент показывает строку и позицию — начните с неё.
Можно ли добавлять комментарии в JSON?
Стандарт их не поддерживает. Если комментарии необходимы, используйте формат JSON5 или JSONC, либо добавьте служебное поле вида "_comment" — формально это обычный ключ, и парсер его примет.
Какой отступ считается правильным?
Строгого правила нет. Два пробела — самый распространённый вариант в веб-разработке и в файлах npm. Четыре пробела чаще встречаются в Python-проектах. Главное — единообразие внутри одного проекта.
Зачем сортировать ключи?
При сравнении двух версий файла разный порядок ключей создаёт ложные различия. После сортировки diff показывает только реальные изменения. Также это помогает быстрее находить нужное поле в большом объекте.
Какой максимальный размер файла?
Жёсткого лимита нет, но файлы больше нескольких мегабайт могут подтормаживать при подсветке синтаксиса. Для очень больших объёмов удобнее консольные утилиты вроде jq.
Обрабатывается ли кириллица корректно?
Да. JSON использует кодировку UTF-8, русский текст отображается как есть. Некоторые серверы экранируют кириллицу последовательностями вида \u0410 — при форматировании она автоматически превращается обратно в читаемые символы.
Отправляются ли данные на сервер?
Нет. Разбор выполняется встроенным парсером браузера на вашем устройстве. Ничего не передаётся и не сохраняется, поэтому инструмент безопасен для конфиденциальных данных.
В чём разница между JSON и XML?
JSON компактнее и разбирается быстрее, у него меньше синтаксического шума. XML богаче: поддерживает атрибуты, пространства имён и схемы валидации. Для веб-API в подавляющем большинстве случаев выбирают JSON.

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

Все инструменты и сервисы →

Нужен сайт или Telegram-бот?

Разработка под ключ: от задачи до запуска и поддержки

Обсудить проект