# JSON formatter i validator

> Formatirajte, proverite i minifikujte JSON online. Greške sa redom i kolonom, popravka zareza i navodnika jednim klikom, veliki brojevi ostaju tačni.

URL: https://acrafto.com/sr/json-formatter-i-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.

Nalepite bilo koji JSON u polje iznad i ovaj JSON formatter i validator ga proverava dok kucate. Važeći unos se pregledno formatira sa uvlačenjem koje izaberete ili se minifikuje u jedan red. Za neispravan unos dobijate tačnu grešku sa redom i kolonom, istaknut isečak i, kod uobičajenih grešaka, popravku jednim klikom. Sve radi u vašem pregledaču, pa API odgovori, konfiguracione datoteke i izvozi nikada ne napuštaju vaš računar.

## Šta radi ovaj JSON formatter

- **Formatiranje JSON-a** sa 2 razmaka, 4 razmaka ili tabovima. Rezultat zadržava originalni redosled 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štedeli.
- **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, `True`, `None` i `NaN` u stilu Python-a, brojevi poput `.5` ili `+1`.
- **Učitavanje datoteka** dugmetom *Otvori datoteku* ili prevlačenjem `.json` datoteke u polje za unos. Rezultat zatim možete preuzeti ili ga vratiti u unos za još jedan prolaz.

## 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. Ni pregledači nisu mnogo bolji: `JSON.parse` u Chrome-u prijavljuje `Unexpected token } in JSON at position 148`, Firefox kaže `expected property name or '}'`, a nijedan vam ne kaže koji red treba da pogledate. Ovaj alat ima sopstveni parser koji pamti gde počinje svaki token. Kada se zaustavi, dobijate red i kolonu, isečak tog reda sa oznakom ^ ispod problematičnog znaka i objašnjenje običnim jezikom, na primer *Verovatno nedostaje zarez između dva svojstva*. Dugme *Idi na grešku* pomera kursor tačno na to mesto u polju za unos.

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

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

Dugme *Popravi umesto mene* ispravlja sve ove greške osim nedostajućeg zareza i nule na početku. Popravka je namerno oprezna: nikada ne pogađa gde nedostajući zarez pripada, jer zarez na pogrešnom mestu menja značenje podataka, a `007` može biti broj 7 ili šifra. U tim slučajevima umesto popravke dobijate tačnu poziciju greške.

## Veliki brojevi, redosled 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` premašuje granicu od 2^53 za brojeve u JavaScript-u i vraća se kao `1234567890123456800`. Vrednost `1.0` postaje `1`, a `1e3` postaje `1000`. Ovaj formatter nikada ne pretvara brojeve u brojeve sa pokretnim zarezom. Svaki literal kopira tačno onako kako je napisan, pa je rezultat verno 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 `"é"`.

I redosled ključeva ostaje sačuvan. JSON specifikacija kaže da članovi objekta nemaju redosled, ali konfiguracione datoteke, testni podaci i pregledi koda se mnogo lakše čitaju kada je redosled stabilan. Ako vam treba kanonski oblik, na primer da uporedite dva API odgovora u alatu za poređenje (diff), uključite *Sortiraj ključeve* i oba dokumenta će navesti svojstva abecednim redom na svakom nivou ugnežđavanja.

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

Pregledno formatiran 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 repozitorijumu u kome razlike treba da prikazuju jednu promenu po redu. Dva razmaka su konvencija u svetu JavaScript-a, četiri razmaka su uobičajena u Python i .NET projektima, a tabovi omogućavaju svakom čitaocu da sam izabere širinu.

Minifikovani JSON je za mašine. Razmaci obično čine 20 do 40 procenata formatiranog dokumenta, pa njihovo uklanjanje smanjuje podatke koji se šalju pregledačima, vrednosti sačuvane u Redis-u ili u koloni baze podataka i `data-*` atribute ugrađene u HTML. Gzip delimično smanjuje tu razliku, ali se minifikovana verzija i dalje kompresuje u manji rezultat. Podatak o veličini ispod rezultata pokazuje tačnu razliku za vaš dokument.

## Rad sa JSON-om u terminalu i editorima

Za datoteke koje obrađujete više puta, alat iz komandne linije je brži od bilo kog sajta. `jq . file.json` pregledno formatira, `jq -c . file.json` minifikuje, a `python -m json.tool file.json` radi svuda gde je instaliran Python. Visual Studio Code formatira JSON prečicom Shift+Alt+F i proverava ga prema šemi kada dodate svojstvo `$schema`. Ova stranica je za ostale slučajeve: odgovor kopiran sa kartice Network, red iz loga, konfiguracioni isečak sa wikija ili brzu proveru na računaru na kome ne možete ništa da instalirate.

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

## Često postavljana pitanja

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

Ne. Parsiranje, formatiranje i popravka se u potpunosti izvršavaju u vašem pregledaču, u JavaScript-u. Kada se stranica učita, možete isključiti mrežu i alat nastavlja da radi. Ništa se ne beleži niti čuva.

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

Komentare je iz JSON-a namerno uklonio njegov autor, Douglas Crockford, da se format ne bi koristio za direktive parseru. Datoteke kao što su `tsconfig.json` ili `.vscode/settings.json` su tehnički JSONC, nadskup JSON-a 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 svuda.

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

JSON dokument sadrži tačno jednu vrednost. Ako nalepite više objekata razdvojenih zarezima ili prelomima redova, validator se zaustavlja na prvoj suvišnoj vrednosti. Stavite ih u uglaste zagrade da dobijete niz, a zatim formatirajte. Dugme za popravku to ne radi automatski, jer ne može da zna da li je unos trebalo da bude jedan dokument.

### Koja je maksimalna veličina JSON-a?

Fiksna granica ne postoji. Dokumenti od nekoliko megabajta se na laptopu formatiraju za znatno manje od sekunde. Isticanje sintakse se isključuje iznad otprilike 400 kB da bi stranica ostala brza, ali kopiranje i preuzimanje i dalje rade.

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

Ne. Objekti u JSON-u po definiciji nemaju redosled (pogledajte [članak o JSON-u na Vikipediji](https://sr.wikipedia.org/wiki/JSON)), pa parser sortirani i originalni dokument čita kao istu vrednost. Nizovi se nikada ne preuređuju, jer je njihov redosled deo podataka.

### Kako escape-ovati JSON za ugradnju u string?

Prvo ga minifikujte, a zatim escape-ujte svaku obrnutu kosu crtu i svaki dvostruki navodnik. Mnogi jezici to nude direktno: `JSON.stringify(JSON.stringify(obj))` u JavaScript-u ili `json.dumps(json.dumps(obj))` u Python-u 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))
- Македонски (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))
