JSON: как проверить, отформатировать и не сломать

4 сентября 2026 г.

API вернул ответ одной строкой на пять тысяч символов, а вам нужно понять, есть ли там поле status. Или наоборот: вы написали конфиг, а валидатор ругается на 1-м символе, хотя визуально всё идеально. Разберём, как быстро привести JSON в порядок и не наступать на одни и те же грабли.

Что JSON прощает, а что нет

JSON — очень формальный формат, и это хорошо: одно и то же везде читается одинаково. Но именно формальность бьёт по пальцам. Вот пять ошибок, которые покрывают почти все случаи «а что ему не нравится?»:

  1. запятая после последнего элемента массива или объекта — в JavaScript-объекте допустима, в JSON нет;
  2. одинарные кавычки вместо двойных — строки и ключи только в " ";
  3. комментарии // или /* */ — в JSON их просто не существует (для конфигов с комментариями придуман JSON5 и YAML);
  4. непроцитированные ключи — name: не пройдёт, нужно "name":;
  5. настоящий перенос строки внутри строкового значения — вместо него должен быть escape-символ \n.

Форматирование и минификация

Один и тот же JSON существует в двух видах. Красивый (pretty-print) — с отступами и переносами, его делают, чтобы читать глазами и находить нужное место. Минифицированный — одной строкой без пробелов: так меньше трафика, и в таком виде данные обычно ходят между серверами. Переключаться между видами удобно в форматтере JSON: вставляете строку — получаете дерево с отступами, нажимаете минификацию — снова компактный вариант. Ошибки синтаксиса он подсвечивает сразу, с указанием места.

Когда файл огромный

В большом ответе глазами искать бесполезно. Если нужно вытащить конкретное поле или проверить, что структура вообще соответствует ожиданиям (обязательные поля, типы), пригодятся два инструмента. Поиск пути в JSON находит путь до нужного значения по подстроке — быстро понять, где именно лежит то, что вы ищете. А валидатор JSON Schema проверит документ на соответствие описанной схеме — незаменимо, когда вы принимаете данные от внешнего API.

Перед коммитом конфига или отправкой задачи коллеге прогоните файл через форматтер — половина «у меня у него не работает» из-за невидимой запятой исчезает сама собой.

Читайте также