# JSON formatter i validator

> Formatirajte, validirajte i minificirajte JSON online. Greške s redom i kolonom, popravka zareza i navodnika jednim klikom, veliki brojevi ostaju tačni.

URL: https://acrafto.com/bs/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.

Zalijepite bilo koji JSON u polje iznad i ovaj JSON formatter i validator provjerava ga dok kucate. Ispravan unos se formatira s uvlačenjem koje odaberete ili se minificira u jedan red. Za neispravan unos dobijate preciznu grešku s redom i kolonom, istaknuti isječak i, kod uobičajenih grešaka, popravku jednim klikom. Sve radi u vašem pretraživaču, tako da API odgovori, konfiguracijske datoteke i izvozi nikada ne napuštaju vaš računar.

## Šta radi ovaj JSON formatter i validator

- **Formatiranje JSON-a** (beautify) s 2 razmaka, 4 razmaka ili tabulatorima. Izlaz zadržava originalni redoslijed ključeva, osim ako ne označite *Sortiraj ključeve*.
- **Minifikacija JSON-a** uklanjanjem svih razmaka i preloma redova. Podatak o veličini ispod rezultata pokazuje koliko ste bajtova uštedjeli.
- **Validacija JSON-a** uživo prema [RFC 8259](https://datatracker.ietf.org/doc/html/rfc8259), aktuelnom JSON standardu. Statusna linija postaje zelena čim je dokument ispravan.
- **Automatska popravka čestih grešaka**: zarezi na kraju, jednostruki navodnici, ključevi bez navodnika, komentari, Python vrijednosti `True`, `None` i `NaN`, brojevi poput `.5` ili `+1`.
- **Učitavanje datoteka** dugmetom *Otvori datoteku* ili prevlačenjem `.json` datoteke na polje za unos. Rezultat zatim preuzmite ili ga vratite u polje za unos za još jedan prolaz.

## JSON validator: zašto je poruka o grešci važnija od crvene boje

Većina online validatora kaže samo da nešto nije u redu. Pretraživači nisu mnogo bolji: `JSON.parse` u Chromeu javlja `Unexpected token } in JSON at position 148`, Firefox kaže `expected property name or '}'`, a nijedan vam ne kaže u koji red da pogledate. Ovaj alat ima vlastiti parser koji pamti gdje počinje svaki token. Kada se zaustavi, dobijate red i kolonu, isječak tog reda s oznakom ^ ispod problematičnog znaka i objašnjenje običnim jezikom, npr. *Vjerovatno nedostaje zarez između dva svojstva*. Dugme *Idi na grešku* pomjera kursor direktno na to mjesto u unosu.

Najčešće greške koje viđamo u zalijepljenim dokumentima:

| Unos | Problem | Ispravan JSON |
| --- | --- | --- |
| `{'name': 'Ada'}` | jednostruki navodnici | `{"name": "Ada"}` |
| `{name: "Ada"}` | ključ bez navodnika | `{"name": "Ada"}` |
| `[1, 2, 3,]` | suvišan zarez na kraju | `[1, 2, 3]` |
| `{"a": 1 "b": 2}` | nedostaje zarez | `{"a": 1, "b": 2}` |
| `{"ok": True}` | Python literal | `{"ok": true}` |
| `{"x": 007}` | vodeća nula | `{"x": 7}` ili `{"x": "007"}` |
| `// comment` | komentar | nije dozvoljen u JSON-u |

Dugme *Popravi umjesto mene* ispravlja sve ovo osim nedostajućeg zareza i vodeće nule. Popravka je namjerno oprezna. Nikada ne pogađa gdje nedostaje zarez, jer bi zarez na pogrešnom mjestu promijenio značenje podataka, a `007` može značiti broj 7 ili neku šifru. U tim slučajevima dobijate tačnu poziciju greške.

## Veliki brojevi, redoslijed ključeva i druge stvari koje se obično pokvare

Mnogi formateri rade tako što pozovu `JSON.parse`, a zatim `JSON.stringify`. Taj povratni put tiho oštećuje podatke. Twitter ili Snowflake ID poput `1234567890123456789` prelazi granicu od 2^53 za brojeve u JavaScriptu i vraća se kao `1234567890123456800`. Vrijednost `1.0` postaje `1`, a `1e3` postaje `1000`. Ovaj formatter nikada ne pretvara brojeve u brojeve s pokretnim zarezom. Svaki literal kopira tačno onako kako je napisan, pa je izlaz vjerno preformatiranje unosa, a ne njegovo novo tumačenje. Isto važi i za escape sekvence unutar stringova: `"\u00e9"` ostaje `"\u00e9"` i ne pretvara se u `"é"`.

Redoslijed ključeva se također čuva. JSON specifikacija kaže da članovi objekta nemaju redoslijed, ali konfiguracijske datoteke, testni podaci i pregledi koda čitaju se mnogo lakše kada je redoslijed stabilan. Ako vam treba kanonski oblik, npr. da uporedite dva API odgovora u alatu za poređenje (diff), uključite *Sortiraj ključeve* i oba dokumenta će navesti svojstva abecedno na svakom nivou ugniježđenosti.

## Formatiranje ili minifikacija JSON-a: kada koristiti šta

Formatirani JSON je za ljude. Koristite ga kada pregledate API odgovor, pišete `package.json`, `tsconfig.json` ili OpenAPI dokument, ili kada čuvate testne podatke u repozitoriju gdje diff treba prikazati jednu promjenu po redu. Dva razmaka su konvencija u svijetu JavaScripta, četiri razmaka su uobičajena u Python i .NET projektima, a tabulatori omogućavaju svakom čitaocu da sam odabere širinu.

Minificirani JSON je za mašine. Razmaci i prelomi redova obično čine 20 do 40 posto formatiranog dokumenta, pa njihovim uklanjanjem smanjujete podatke koji se šalju pretraživačima, vrijednosti spremljene u Redis ili u kolonu baze podataka, te `data-*` atribute ugrađene u HTML. Gzip djelimično smanjuje tu razliku, ali se minificirana verzija i dalje komprimira u manji rezultat. Podatak o veličini ispod rezultata pokazuje tačnu razliku za vaš dokument.

## Rad s JSON-om u terminalu i u editorima

Za datoteke koje redovno obrađujete, alat iz komandne linije je brži od bilo koje web stranice. `jq . file.json` formatira, `jq -c . file.json` minificira, a `python -m json.tool file.json` radi svugdje gdje je instaliran Python. Visual Studio Code formatira JSON prečicom Shift+Alt+F i validira ga prema shemi kada dodate svojstvo `$schema`. Ova stranica je za ostale slučajeve: odgovor kopiran iz kartice Network u alatima za programere, red iz loga, isječak konfiguracije s wikija ili brza provjera na računaru na koji ne možete ništa instalirati.

Povezani alati na ovom sajtu: [Base64 koder i dekoder](https://acrafto.com/bs/base64-koder-dekoder/) dekodira payload dio JWT-a, koji je JSON kodiran u Base64url. [UNIX timestamp konverter](https://acrafto.com/bs/unix-timestamp-konverter/) pretvara brojeve `createdAt` iz većine API odgovora u čitljive datume, a [UUID dekoder](https://acrafto.com/bs/uuid-dekoder-validat/) otkriva verziju i vremensku oznaku identifikatora u vašim podacima. Još korisnih alata pronaći ćete među [alatima za programere](https://acrafto.com/bs/programeri/).

## Često postavljana pitanja (FAQ)

### Da li se moj JSON šalje na server?

Ne. Parsiranje, formatiranje i popravka rade u potpunosti u vašem pretraživaču, u JavaScriptu. Kada se stranica učita, možete isključiti internet i alat će i dalje raditi. Ništa se ne bilježi niti sprema.

### Zašto validator odbija komentare kada ih moj editor prihvata?

Komentare je iz JSON-a namjerno uklonio njegov autor, Douglas Crockford, kako se format ne bi koristio za direktive parseru. Datoteke poput `tsconfig.json` ili `.vscode/settings.json` su tehnički JSONC, nadskup koji editori podržavaju. Strogi parseri u API-jima, bazama podataka i većini programskih jezika ih odbijaju. Dugme za popravku uklanja komentare, pa je rezultat važeći svugdje.

### Mogu li formatirati JSON Lines ili više objekata odjednom?

JSON dokument sadrži tačno jednu vrijednost. Ako zalijepite više objekata odvojenih zarezima ili prelomima redova, validator se zaustavlja na prvoj suvišnoj vrijednosti. Stavite ih u uglaste zagrade da dobijete niz, a zatim formatirajte. Dugme za popravku to ne radi automatski, jer ne može znati da li je unos trebao biti jedan dokument.

### Koja je maksimalna veličina?

Nema fiksne granice. Dokumenti od nekoliko megabajta formatiraju se na laptopu za znatno manje od sekunde. Isticanje sintakse se isključuje iznad otprilike 400 kB kako bi stranica ostala brza, ali kopiranje i preuzimanje i dalje rade.

### Da li sortiranje ključeva mijenja podatke?

Ne. Objekti u JSON-u su po definiciji neuređeni, pogledajte [članak o JSON-u na Wikipediji](https://en.wikipedia.org/wiki/JSON) (na engleskom), tako da parser sortirani i originalni dokument čita kao istu vrijednost. Nizovi se nikada ne preuređuju, jer je njihov redoslijed dio podataka.

### Kako JSON umetnuti u string (escape)?

Prvo ga minificirajte, a zatim ispred svake obrnute kose crte i svakog dvostrukog navodnika dodajte obrnutu kosu crtu. Mnogi jezici to nude direktno: `JSON.stringify(JSON.stringify(obj))` u JavaScriptu ili `json.dumps(json.dumps(obj))` u Pythonu daju JSON string koji sadrži JSON tekst.

## 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))
- Български (bg): [JSON formatter и валидатор](https://acrafto.com/bg/json-formatter-validator/) ([Markdown](https://acrafto.com/bg/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))
- 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))
