Polnoye rukovodstvo po JSON

Бесплатно Formatirovaniye · Validatsiya · Konvertatsiya · Luchshiye praktiki Без регистрации · Данные не сохраняются · Работа офлайн после загрузки

Instrumenty v etom rukovodstve

JSON Formatter & Validator
Format, validate, minify and fix JSON
JSON → YAML
В YAML
JSON → CSV
В CSV
JSON → XML
В XML
JSON → TOML
В TOML
JSON → TOON
В TOON
Форматтер YAML
Форматировать
Base64
Кодировать/декодировать
Последнее обновление: 28 сентября 2026  ·  v1.0
Краткий ответ
Каковы основы форматирования JSON?

Форматирование делает сжатый JSON читаемым и помогает находить синтаксические ошибки и несовпадения типов. Используйте двойные кавычки и удаляйте конечные запятые и комментарии.

Форматирование и отступы JSON

JSON представляет объекты, упорядоченные массивы, строки, числа, логические значения и null. Это текстовый формат, а не объект JavaScript во время исполнения: функции, символы и undefined в него не входят. [Форматировщик JSON](/) проверяет синтаксис и показывает вложенность.

Минифицированный ответ API часто занимает одну строку. Отступы помогают найти пропущенные скобки, неправильные запятые и неожиданные типы, не меняя смысл значений.

RFC 8259 не задаёт ширину отступа. Два пробела распространены в веб-разработке, четыре — в Python и Java; табуляция позволяет выбирать ширину отображения в редакторе. Придерживайтесь одного правила. Минификация не должна удалять пробелы внутри строк.

Распространённые ошибки JSON

Ключи и строки требуют двойных кавычек. Одинарные кавычки, ключи без кавычек, комментарии и конечные запятые недопустимы в строгом JSON. Позиция ошибки показывает остановку парсера; причина может находиться чуть раньше.

Исправление кавычек восстанавливает некоторые входы, но не удаляет конечные запятые и комментарии и не добавляет пропущенные скобки. Примеры ниже показывают эти границы и ведут к инструменту.

NaN, Infinity и undefined не являются значениями JSON. Подбирайте замену по смыслу: автоматический null может изменить данные. Явно преобразуйте JSON5, если получатель требует строгий JSON.

Преобразование JSON в другие форматы

JSON в YAML подходит для манифестов Kubernetes, Docker Compose и CI. JSON в CSV создаёт таблицы: объекты становятся строками, ключи столбцами, а вложенные объекты используют точечные имена. При импорте в таблицу проверяйте массивы и типы.

JSON в XML помогает с XML-интерфейсами; задавайте имена элементов и представление массивов. JSON в TOML подходит для Cargo.toml и pyproject.toml. У TOML нет null, поэтому не всякую структуру JSON можно перенести без потерь.

Обработка остаётся в браузере. Память и реализация ограничивают размер и глубину. Проверяйте результат в целевой системе и не считайте, что обратное преобразование всегда сохранит всё.

Практики JSON для API

Выберите стиль ключей, например snake_case или camelCase, и соблюдайте его во всём API. Уменьшайте ненужную вложенность, сохраняя важные связи. Отсутствующее поле и поле с null могут иметь разные значения: документируйте их в схеме.

В JSON нет типа даты. 2024-01-15T10:30:00Z — однозначная строка; метки Unix тоже подходят, если единица измерения описана. Избегайте случайного появления локальных дат без часового пояса.

Проверяйте входы на границе системы. Успешный разбор подтверждает синтаксис, не бизнес-правила; JSON Schema описывает обязательные поля, типы и диапазоны. Сравнение JSON помогает проверять ответы: порядок ключей объектов игнорируется, а порядок массивов учитывается.

Распространённые ошибки JSON и исправления

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

Одинарные кавычки и ключ без кавычек: исправление кавычек в форматтере может преобразовать этот пример в строгий JSON.

Недопустимый JSON

{name: 'Alice'}

Допустимый JSON

{"name":"Alice"}

Завершающая запятая: удалите последнюю запятую вручную. Исправление кавычек не удаляет завершающие запятые или комментарии и не добавляет пропущенные скобки.

Недопустимый JSON

{"a":1,"b":2,}

Допустимый JSON

{"a":1,"b":2}

NaN, Infinity и undefined не являются значениями JSON. Выбирайте замену с учётом смысла данных; безусловная замена на null может его изменить.

Форматирование JSON и поиск ошибок

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

В чём разница между JSON и JSON5?

JSON5 — это расширение, добавляющее комментарии, завершающие запятые, ключи без кавычек и строки в одинарных кавычках к JSON. Большинство API и парсеров ожидают строгий JSON (RFC 8259), а не JSON5.

Может ли JSON содержать двоичные данные?

Не напрямую. Стандартный подход — закодировать двоичные данные в Base64 и хранить их как строку JSON. Наш Base64 Encoder выполняет это преобразование.

Каков максимальный размер JSON-файла?

Спецификация JSON не имеет ограничения по размеру. Практические ограничения задаёт память вашего парсера. Наш форматтер эффективно обрабатывает большие файлы прямо в браузере.

JSON — это то же самое, что объект JavaScript?

Нет. Объект JavaScript — это структура данных времени выполнения. JSON — это текстовый формат сериализации. Функции, undefined и символы не являются допустимыми значениями JSON.

Как минифицировать JSON для продакшена?

Нажмите кнопку минификации в форматировщике JSON. Она удаляет ненужные пробелы вне строк и сохраняет пробелы внутри значений. Уменьшение размера зависит от исходного форматирования.