RUV CalculatorФорматирование JSONhttps://calc.ruvlabs.com/ru/c/json-formatter

Форматирование JSON

Форматировать, сжать и проверить

Дополнительные настройки

Отформатированный JSON

Синтаксис
Размер после сжатия
Подробности
Подробности
Сжатый

Синтаксис: Корректный. В сжатом виде 57 байт.

Этот JSON корректен?

Синтаксис: Корректный. В сжатом виде 57 байт.

Пример с начальными значениями. Измените поля выше, чтобы получить свой результат.

Форматирование, сжатие и проверка

Форматирование расставляет отступы, чтобы человек видел структуру; сжатие убирает все необязательные пробелы, чтобы уменьшить объём передачи. Меняется только внешний вид: данные в обоих случаях одинаковы, поэтому переход между ними никогда не меняет значение.

Проверка пытается разобрать текст и сообщает, удалось ли. При неудаче она указывает и место, где разбор остановился, но это не там, где началась ошибка, а там, где стало невозможно двигаться дальше. Настоящая причина обычно чуть раньше по тексту.

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

Почему JSON обычно не разбирается

Запятая, оставшаяся после последней записи, — самая частая причина. Литералы объектов в JavaScript её допускают, а стандарт JSON нет, и её легко забыть после удаления записи. Загляните сначала прямо перед каждой закрывающей скобкой.

Одинарные кавычки — это не JSON. И ключи, и строковые значения требуют двойных кавычек, а привычка JavaScript оставлять ключи без кавычек сюда не переносится. Чаще всего это подводит, когда фрагмент скопирован прямо из исходного кода.

Комментарии тоже не входят в стандарт. Комментарии с двойной косой чертой, привычные в файлах настроек, допускают лишь расширения вроде JSON5 или JSONC, поэтому стандартному разборщику их нужно убрать. У NaN, Infinity и undefined представления тоже нет.

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

Отправляется ли мой JSON куда-нибудь?

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

Почему место ошибки указано так расплывчато?

Потому что сообщение приходит прямо от JSON-разборщика браузера, и его формат у разных браузеров отличается, хотя большинство указывает позицию символа. Обычные виновники — лишняя запятая в конце, одинарные кавычки или комментарии.

Можно ли писать комментарии в JSON?

Стандартный JSON их не допускает. Для файлов конфигурации используйте расширенный формат вроде JSON5 или JSONC либо добавьте ключ наподобие _comment, который ваш код будет игнорировать.

Расчёт выполняется в этом браузере. Проверьте введённые значения, прежде чем полагаться на результат.