Текст и данные

Отформатировать JSON

Вставьте JSON — получите читаемый вид, проверьте ошибки и скопируйте результат.

Попробуйте здесь, без аккаунта

Сохранить и продолжить на рабочем столе

Скачайте или скопируйте результат прямо здесь. В рабочем столе он сохранится в Файлы, а инструмент откроется в полной версии.

  • Приведите JSON в порядок и найдите ошибку
  • Сохраните в Файлы nopa, когда продолжите на рабочем столе
  • Все инструменты рядом — без новых вкладок
Открыть рабочий стол

После скачивания — продолжите на рабочем столе: Файлы или полная версия.

Что умеет этот инструмент

Отступ в два пробела — и больше ничего

На выходе те же данные, заново собранные с отступом в два пробела: так по умолчанию выглядит JSON почти в любом репозитории и в любом diff. Порядок ключей сохраняется, значения не трогаются, меняются только пробелы. Выбора размера отступа здесь нет намеренно — одна предсказуемая форма означает, что отформатированный файл чисто ляжет в diff рядом с предыдущим.

Куда показывает сообщение об ошибке

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

Только строгий JSON — и все цифры на месте

Проверка идёт через встроенный в браузер JSON-парсер, поэтому комментарии и висячие запятые отклоняются: tsconfig или файл .jsonc здесь не пройдут, и это правило формата, а не недоработка. Сам текст при этом не превращается в значения JavaScript и обратно — отступы расставляются токен за токеном. Поэтому ID больше 9 007 199 254 740 991 сохраняет последние цифры, 1.10 остаётся 1.10, а повторённый ключ не пропадает молча: 19-значный номер заказа выходит ровно таким, каким вошёл.

Похожие приложения

Вопросы

Есть ли ограничение по размеру?

Жёсткого лимита нет — всё считается во вкладке браузера, поэтому несколько мегабайт проходят нормально, а заминка, которую вы заметите, — это ваш собственный процессор. Примерно после 80 000 символов результат перестаёт обновляться на каждое нажатие клавиши — нажмите «Форматировать» (или «Минифицировать»), и он появится. Так и здесь, и в полном приложении.

Почему мой конфиг не проходит проверку?

Почти наверняка из-за комментариев или запятой после последнего элемента. В JSON5 и .jsonc это допустимо, в JSON — нет, и строгий парсер останавливается на первой же такой находке. Уберите их, и тот же файл станет валидным.

Можно минифицировать JSON?

Да, прямо здесь: переключите результат с «Форматировать» на «Минифицировать» — он станет одной строкой без лишних пробелов, и «Копировать» возьмёт именно её. Значения в обоих видах остаются такими, как были написаны.