# JSON formatter и валидатор

> Форматиране, валидиране и минифициране на JSON онлайн. Грешки с ред и колона, поправка на излишни запетаи и единични кавички с един клик, точни големи числа.

URL: https://acrafto.com/bg/json-formatter-validator/  
Updated: 2026-10-03

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

Поставете произволен JSON в полето по-горе и този JSON formatter и валидатор ще го провери още докато пишете. Валидните данни се форматират с избрания отстъп или се минифицират в един ред. При невалидни данни получавате точно съобщение за грешка с ред и колона, откъс с маркирания знак, а за най-честите грешки и поправка с един клик. Всичко работи във вашия браузър, така че отговорите от API, конфигурационните файлове и експортите никога не напускат компютъра ви.

## Какво прави този JSON formatter

- **Форматира JSON** с 2 интервала, 4 интервала или табулации. Резултатът запазва оригиналния ред на ключовете, освен ако не отметнете *Сортирай ключовете*.
- **Минифицира JSON**, като премахва всички интервали и нови редове. Показателят за размер под резултата показва колко байта сте спестили.
- **Валидира JSON** в реално време според [RFC 8259](https://datatracker.ietf.org/doc/html/rfc8259), действащия стандарт за JSON. Редът за състоянието става зелен в момента, в който документът е коректен.
- **Поправя автоматично честите грешки**: излишни запетаи, единични кавички, ключове без кавички, коментари, `True`, `None` и `NaN` в стил Python, числа като `.5` или `+1`.
- **Зарежда файлове** с бутона *Отвори файл* или когато пуснете файл `.json` върху полето за вход. След това можете да изтеглите резултата или да го върнете във входа за още една обработка.

## JSON валидатор: съобщението за грешка е по-важно от червения цвят

Повечето онлайн валидатори казват само, че нещо не е наред. Браузърите не са много по-добри: `JSON.parse` в Chrome съобщава `Unexpected token } in JSON at position 148`, Firefox казва `expected property name or '}'`, и никой от двата не ви казва на кой ред да търсите. Този инструмент има собствен парсер, който помни къде започва всеки токен. Когато спре, получавате реда и колоната, откъс от този ред със знак `^` под проблемния символ и подсказка на разбираем език, например *Вероятно липсва запетая между две свойства*. Бутонът *Към грешката* премества курсора точно на това място във входните данни.

Най-честите грешки, които виждаме в поставените документи:

| Вход | Проблем | Коректен JSON |
| --- | --- | --- |
| `{'name': 'Ada'}` | единични кавички | `{"name": "Ada"}` |
| `{name: "Ada"}` | ключ без кавички | `{"name": "Ada"}` |
| `[1, 2, 3,]` | излишна запетая | `[1, 2, 3]` |
| `{"a": 1 "b": 2}` | липсваща запетая | `{"a": 1, "b": 2}` |
| `{"ok": True}` | литерал от Python | `{"ok": true}` |
| `{"x": 007}` | водеща нула | `{"x": 7}` или `{"x": "007"}` |
| `// comment` | коментар | не е позволен в JSON |

Бутонът *Поправи вместо мен* отстранява всички тези грешки с изключение на липсващата запетая и водещата нула. Поправката е умишлено предпазлива. Тя никога не гадае къде трябва да е липсващата запетая, защото запетая на грешно място променя смисъла на данните, а `007` може да означава числото 7, но и код. В тези случаи вместо поправка получавате точната позиция.

## Големи числа, ред на ключовете и други неща, които обикновено се развалят

Много форматери работят, като извикват `JSON.parse` и след това `JSON.stringify`. Това двойно преобразуване незабелязано поврежда данните. ID от Twitter или Snowflake като `1234567890123456789` надхвърля границата 2^53 на числата в JavaScript и се връща като `1234567890123456800`. Стойността `1.0` става `1`, а `1e3` става `1000`. Този форматер никога не превръща числата в числа с плаваща запетая. Той копира всеки литерал точно така, както е написан, така че резултатът е вярно преформатиране на входа, а не негово претълкуване. Същото важи и за екраниращите последователности в низовете: `"\u00e9"` остава `"\u00e9"` и не се превръща в `"é"`.

Редът на ключовете също се запазва. Спецификацията на JSON казва, че членовете на обекта са неподредени, но конфигурационните файлове, тестовите данни и прегледите на код се четат много по-лесно, когато редът е стабилен. Ако предпочитате канонична форма, например за да сравните два отговора от API в инструмент за diff, включете *Сортирай ключовете* и двата документа ще подредят свойствата си по азбучен ред на всяко ниво на влагане.

## Форматиране или минифициране на JSON: кога кое да използвате

Форматираният JSON е за хора. Използвайте го, когато преглеждате отговор от API, пишете `package.json`, `tsconfig.json` или документ на OpenAPI, или когато пазите тестови данни в хранилище, където всеки diff трябва да показва по една промяна на ред. Два интервала са конвенцията в света на JavaScript, четири интервала са обичайни в проектите на Python и .NET, а табулациите позволяват на всеки читател да избере собствената си ширина.

Минифицираният JSON е за машини. Празното пространство обикновено заема 20 до 40 процента от форматирания документ, така че премахването му намалява данните, изпращани към браузърите, стойностите в Redis или в колона на база данни и атрибутите `data-*`, вградени в HTML. Компресията gzip стопява част от тази разлика, но минифицираната версия пак се компресира до по-малък размер. Показателят за размер под резултата показва точната разлика за вашия документ.

## Работа с JSON в терминала и в редакторите

За файлове, които обработвате многократно, инструментът от командния ред е по-бърз от всеки уебсайт. `jq . file.json` форматира, `jq -c . file.json` минифицира, а `python -m json.tool file.json` работи навсякъде, където е инсталиран Python. Visual Studio Code форматира JSON с Shift+Alt+F и го валидира спрямо схема, когато добавите свойство `$schema`. Тази страница е за всички останали случаи: отговор, копиран от раздела Network, ред от лог, конфигурационен фрагмент от уики или бърза проверка на компютър, на който не можете да инсталирате нищо.

Свързани инструменти на сайта: [Base64 енкодерът и декодерът](https://acrafto.com/bg/base64-enkoder-dekoder-onlain/) декодира частта с данни (payload) на JWT, която представлява JSON, кодиран в Base64url. [Конверторът за Unix timestamp](https://acrafto.com/bg/unix-timestamp-konverter/) превръща числата `createdAt` от повечето отговори на API в четими дати, а [UUID декодерът](https://acrafto.com/bg/uuid-dekoder-validator/) показва версията и времевия маркер на идентификаторите в данните ви. Още помощни инструменти ще намерите в категорията [Разработчици](https://acrafto.com/bg/razrabotchici/).

## Често задавани въпроси

### Качва ли се моят JSON на сървър?

Не. Анализът, форматирането и поправката се изпълняват изцяло във вашия браузър с JavaScript. След като страницата се зареди, можете да изключите мрежата и инструментът ще продължи да работи. Нищо не се записва и не се съхранява.

### Защо валидаторът отхвърля коментари, щом моят редактор ги приема?

Коментарите са премахнати от JSON умишлено от неговия автор Douglas Crockford, за да не се използва форматът за директиви към парсера. Файлове като `tsconfig.json` или `.vscode/settings.json` технически са JSONC, разширение на JSON, което редакторите поддържат. Строгите парсери в API, базите данни и повечето езици за програмиране ги отхвърлят. Бутонът за поправка премахва коментарите, така че резултатът да е валиден навсякъде.

### Мога ли да форматирам JSON Lines или няколко обекта наведнъж?

Един JSON документ съдържа точно една стойност. Ако поставите няколко обекта, разделени със запетаи или нови редове, валидаторът спира при първата излишна стойност. Оградете ги с квадратни скоби, за да получите масив, и след това форматирайте. Бутонът за поправка не прави това автоматично, защото не може да знае дали входът е трябвало да бъде един документ.

### Какъв е максималният размер?

Няма фиксирано ограничение. Документи от няколко мегабайта се форматират на лаптоп за доста по-малко от секунда. Над приблизително 400 kB оцветяването на синтаксиса се изключва, за да остане страницата отзивчива, но копирането и изтеглянето продължават да работят.

### Променя ли сортирането на ключовете данните?

Не. Обектите в JSON по дефиниция са неподредени, вижте [статията за JSON в Уикипедия](https://bg.wikipedia.org/wiki/JSON), така че парсерът чете сортирания и оригиналния документ като една и съща стойност. Масивите никога не се пренареждат, защото редът им е част от данните.

### Как да екранирам JSON, за да го вградя в низ?

Първо минифицирайте, след това екранирайте всяка обратна наклонена черта и всяка двойна кавичка. Много езици предлагат това директно: `JSON.stringify(JSON.stringify(obj))` в JavaScript или `json.dumps(json.dumps(obj))` в Python връщат JSON низ, който съдържа JSON текста.

## Other languages

- Čeština (cs): [JSON formatter a validátor](https://acrafto.com/cs/json-formatter-validator/) ([Markdown](https://acrafto.com/cs/json-formatter-validator/index.md))
- Slovenčina (sk): [JSON formatter a validátor](https://acrafto.com/sk/json-formatter-validator-online/) ([Markdown](https://acrafto.com/sk/json-formatter-validator-online/index.md))
- English (en): [JSON Formatter and Validator](https://acrafto.com/en/json-formatter-validator/) ([Markdown](https://acrafto.com/en/json-formatter-validator/index.md))
- Deutsch (de): [JSON Formatter & Validator](https://acrafto.com/de/json-formatter-validator/) ([Markdown](https://acrafto.com/de/json-formatter-validator/index.md))
- Français (fr): [JSON Formatter et validateur](https://acrafto.com/fr/formateur-validateur-json/) ([Markdown](https://acrafto.com/fr/formateur-validateur-json/index.md))
- Español (es): [Formateador y validador JSON](https://acrafto.com/es/formateador-validador-json/) ([Markdown](https://acrafto.com/es/formateador-validador-json/index.md))
- Italiano (it): [JSON formatter e validatore](https://acrafto.com/it/json-formatter-validatore-online/) ([Markdown](https://acrafto.com/it/json-formatter-validatore-online/index.md))
- Português (pt): [Formatador e validador JSON](https://acrafto.com/pt/formatador-validador-json/) ([Markdown](https://acrafto.com/pt/formatador-validador-json/index.md))
- Nederlands (nl): [JSON formatter & validator](https://acrafto.com/nl/json-formatter-validator/) ([Markdown](https://acrafto.com/nl/json-formatter-validator/index.md))
- Polski (pl): [JSON Formatter i walidator](https://acrafto.com/pl/json-formatter-i-walidator/) ([Markdown](https://acrafto.com/pl/json-formatter-i-walidator/index.md))
- Română (ro): [JSON formatter și validator](https://acrafto.com/ro/json-formatter-validator/) ([Markdown](https://acrafto.com/ro/json-formatter-validator/index.md))
- Magyar (hu): [JSON formatter és validátor](https://acrafto.com/hu/json-formatter-validator/) ([Markdown](https://acrafto.com/hu/json-formatter-validator/index.md))
- Ελληνικά (el): [JSON formatter και validator](https://acrafto.com/el/json-formatter-validator/) ([Markdown](https://acrafto.com/el/json-formatter-validator/index.md))
- Hrvatski (hr): [JSON formatter i validator](https://acrafto.com/hr/json-formatter-validator-online/) ([Markdown](https://acrafto.com/hr/json-formatter-validator-online/index.md))
- Slovenščina (sl): [JSON formatter in validator](https://acrafto.com/sl/json-formatter-validator/) ([Markdown](https://acrafto.com/sl/json-formatter-validator/index.md))
- Eesti (et): [JSON formatter ja validaator](https://acrafto.com/et/json-formatter-validaator/) ([Markdown](https://acrafto.com/et/json-formatter-validaator/index.md))
- Latviešu (lv): [JSON formatter un validētājs](https://acrafto.com/lv/json-formatter-validetajs/) ([Markdown](https://acrafto.com/lv/json-formatter-validetajs/index.md))
- Lietuvių (lt): [JSON Formatter ir validatorius](https://acrafto.com/lt/json-formatter-validatorius/) ([Markdown](https://acrafto.com/lt/json-formatter-validatorius/index.md))
- Svenska (sv): [JSON formatter och validator](https://acrafto.com/sv/json-formatter-validator/) ([Markdown](https://acrafto.com/sv/json-formatter-validator/index.md))
- Dansk (da): [JSON formatter og validator](https://acrafto.com/da/json-formatter-validator/) ([Markdown](https://acrafto.com/da/json-formatter-validator/index.md))
- Suomi (fi): [JSON formatter ja validaattori](https://acrafto.com/fi/json-formatter-validaattori/) ([Markdown](https://acrafto.com/fi/json-formatter-validaattori/index.md))
- Norsk (no): [JSON formatter og validator](https://acrafto.com/no/json-formatter-validator/) ([Markdown](https://acrafto.com/no/json-formatter-validator/index.md))
- Українська (uk): [JSON Formatter і валідатор](https://acrafto.com/uk/json-formatter-i-validator/) ([Markdown](https://acrafto.com/uk/json-formatter-i-validator/index.md))
- Русский (ru): [JSON formatter и валидатор](https://acrafto.com/ru/json-formatter-validator/) ([Markdown](https://acrafto.com/ru/json-formatter-validator/index.md))
- Српски (sr): [JSON formatter i validator](https://acrafto.com/sr/json-formatter-i-validator/) ([Markdown](https://acrafto.com/sr/json-formatter-i-validator/index.md))
- Македонски (mk): [JSON Formatter & Validator](https://acrafto.com/mk/json-formatter-validator/) ([Markdown](https://acrafto.com/mk/json-formatter-validator/index.md))
- Bosanski (bs): [JSON formatter i validator](https://acrafto.com/bs/json-formatter-validator/) ([Markdown](https://acrafto.com/bs/json-formatter-validator/index.md))
- Shqip (sq): [JSON Formatter dhe validues](https://acrafto.com/sq/json-formatter-validues/) ([Markdown](https://acrafto.com/sq/json-formatter-validues/index.md))
- Türkçe (tr): [JSON formatter ve doğrulayıcı](https://acrafto.com/tr/json-formatter-dogrulayici/) ([Markdown](https://acrafto.com/tr/json-formatter-dogrulayici/index.md))
- 日本語 (ja): [JSON整形ツール](https://acrafto.com/ja/json-formatter-validator/) ([Markdown](https://acrafto.com/ja/json-formatter-validator/index.md))
- 한국어 (ko): [JSON 정렬 및 검사기](https://acrafto.com/ko/json-formatter-validator/) ([Markdown](https://acrafto.com/ko/json-formatter-validator/index.md))
- العربية (ar): [تنسيق JSON والتحقق منه](https://acrafto.com/ar/json-formatter-validator/) ([Markdown](https://acrafto.com/ar/json-formatter-validator/index.md))
- हिन्दी (hi): [JSON Formatter और Validator](https://acrafto.com/hi/json-formatter-validator/) ([Markdown](https://acrafto.com/hi/json-formatter-validator/index.md))
- Bahasa Indonesia (id): [JSON formatter dan validator](https://acrafto.com/id/json-formatter-validator/) ([Markdown](https://acrafto.com/id/json-formatter-validator/index.md))
- Tiếng Việt (vi): [JSON Formatter và Validator](https://acrafto.com/vi/json-formatter-kiem-tra-json/) ([Markdown](https://acrafto.com/vi/json-formatter-kiem-tra-json/index.md))
- ไทย (th): [JSON Formatter & Validator](https://acrafto.com/th/json-formatter-validator/) ([Markdown](https://acrafto.com/th/json-formatter-validator/index.md))
- עברית (he): [JSON Formatter ובדיקת תקינות](https://acrafto.com/he/json-formatter-validator/) ([Markdown](https://acrafto.com/he/json-formatter-validator/index.md))
