JSON Formatter
Валідує, форматує і мініфікує JSON з підсвічуванням.
Про цей інструмент
JSON Formatter парсить будь-який JSON-документ, валідує його проти RFC 8259-граматики і переформатовує з консистентною індентацією та syntax highlighting. Вставте output API-відповіді, config-файл або log-рядок — невалідний JSON отримає inline error з точним рядком і колонкою parse-фейлу; валідний JSON отримає pretty-print зі згортуваними об'єктами та масивами, щоб ви могли навігувати великими структурами без нескінченного скролу.
Окрім pretty-print, інструмент може мінімізувати JSON (зрізати кожен зайвий байт для transit), сортувати ключі алфавітно (корисно для diff двох конфігів), екранувати все значення як JSON-in-string (для вбудовування в інший JSON-payload) і unescape назад. Усе виконується локально у вашому браузері — payload ніколи не перетинає мережу, тож безпечно для API-відповідей із токенами чи PII.
Коли використовувати цей інструмент
- Дебаг API. Киньте curl-відповідь у форматер, щоб стіну компактного JSON зробити читабельною.
- Diff-и конфігів. Сортуйте обидва файли за ключами, тоді порівнюйте — випадковий порядок ключів інакше дає шумні diff-и.
- Валідація перед деплоєм. Помилка в CI YAML часто ховається як malformed JSON всередині рядка; вставте внутрішній JSON, щоб переконатись, що він парситься.
- Вбудовування JSON у JSON. Auto-escape payload, щоб він міг подорожувати як string-поле в іншому JSON (зручно для webhook-body в шаблонах).
Що ловить наш валідатор
RFC 8259 забороняє trailing-коми, коментарі та unquoted keys — типові JS-flavoured зручності. Ми тримаємо специфікацію суворо, тож JSON, що ви копіюєте з нашого форматера, валідний усюди. Якщо треба форматувати JSON5 або JSONC (з коментарями, trailing-комами), зробіть попередній «strip extras» прохід — багато редакторів роблять це автоматично при збереженні як.json.
Часті запитання
Чому мій JSON з trailing-комами не парситься?
{"a": 1,} валідний у JavaScript, але невалідний JSON. Те саме — single-quoted рядки, unquoted ключі та //-коментарі: це JS-зручності, які JSON-спека свідомо виключила для cross-language portability. Якщо потрібен relaxed-формат, дивіться на JSON5 або JSONC; для строгого interop наш форматер правильно їх відкидає.
Чи можна форматувати JSON Lines (NDJSON)?
Чи змінює інструмент порядок моїх ключів?
Якого розміру може бути input?
jq, fx, jless); для типового «API-відповідь, що виявилась 8 MB» — браузер цілком справляється.