Vodiči

Što je JSON? Vodič jednostavnim jezikom s primjerima

JSON (JavaScript Object Notation) je jednostavan tekstualni format za zapisivanje strukturiranih podataka, poput kupca, narudžbe ili popisa proizvoda, kao parova naziva i vrijednosti. Lako ga je čitati ljudima, a programima jednostavno proizvesti i obraditi. Kad aplikacije i servisi razmjenjuju podatke preko weba, JSON je daleko najčešći format.

Zašto je JSON važan kad gradite s AI-jem

JSON ćete susretati stalno, čak i ako nikad ne pišete kod:

  • API-ji. Kad ekrani vaše aplikacije učitavaju podatke iz backenda ili kad vaš backend poziva servis za plaćanje, slanje e-pošte ili AI, podaci obično putuju kao JSON. Pogledajte što je API.
  • Datoteke s postavkama. Mnoge konfiguracijske datoteke projekta su JSON, na primjer package.json, koji popisuje ovisnosti JavaScript projekta.
  • Baze podataka. Postgres može spremati JSON u stupac (tip jsonb) za podatke koji se ne uklapaju u uredne retke i stupce. Pogledajte što je Postgres.
  • Izlaz AI-ja. Kad želite da AI model vrati nešto što program može koristiti, na primjer popis oznaka ili izvučena polja s računa, obično tražite JSON.
  • Poruke o greškama i logovi. Mnoge greške stižu kao JSON, a čitanje tih poruka često je najbrži način da saznate što je pošlo po zlu.

Čitanje JSON-a omogućuje vam da provjerite što je vaša aplikacija stvarno primila, uočite nedostajuće polje i precizno opišete problem svom AI alatu za izradu.

Svakodnevna analogija

Zamislite papirnati obrazac: Ime: ____, Telefon: ____, Newsletter: ☐ da ☐ ne. Svaki unos je naziv s vrijednošću pored njega. JSON je taj obrazac zapisan kao tekst, u strogom rasporedu koji računalo može čitati bez nagađanja. I kao obrasci, JSON može imati odjeljke unutar odjeljaka (blok adrese s ulicom, gradom i poštanskim brojem) i popise (više brojeva telefona).

Kako izgleda JSON

Evo jedne rezervacije zapisane u JSON-u:

{
  "id": 5001,
  "customer": "Lena Park",
  "service": "Šišanje",
  "startsAt": "2026-10-03T14:00:00Z",
  "price": 35.5,
  "paid": false,
  "notes": null,
  "extras": ["šišanje brade", "topli ručnik"],
  "contact": {
    "email": "lena@example.com",
    "phone": "+44 20 7946 0000"
  }
}

Čitanje:

  • Vitičaste zagrade { } omotavaju objekt, skup parova naziva i vrijednosti.
  • Svaki par je "naziv": vrijednost, odvojen zarezima.
  • Uglate zagrade [ ] omotavaju niz, uređeni popis.
  • Objekti i nizovi mogu biti jedan unutar drugog, kao što su contact i extras.

Šest vrsta vrijednosti

JSON ima samo šest vrsta vrijednosti. Taj mali popis je velik dio razloga zašto radi svuda.

VrstaPrimjerNapomene
Niz znakova (tekst)"Lena Park"Uvijek dvostruki navodnici
Broj35.5, -2, 1e6Bez navodnika; bez simbola valute
Booleantrue, falseMala slova, bez navodnika
Nullnull„Nema vrijednosti”
Objekt{ "city": "Zagreb" }Imenovane vrijednosti
Niz (array)[1, 2, 3]Uređeni popis; stavke mogu biti bilo koje vrste

Ne postoji tip za datum. Datumi se zapisuju kao nizovi znakova, obično u ISO 8601 formatu prikazanom gore (2026-10-03T14:00:00Z, gdje Z znači UTC). Dogovor o tom formatu sprječava cijelu kategoriju grešaka sa zonama vremena.

Stroga pravila (odakle dolaze greške)

JSON je manje tolerantan nego što izgleda. Ovo su sve neispravni zapisi:

{ name: "Lena" }            ← ključ bez dvostrukih navodnika
{ 'name': 'Lena' }          ← jednostruki navodnici
{ "a": 1, "b": 2, }         ← završni zarez
{ "a": 1 "b": 2 }           ← nedostaje zarez
{ "a": 1 // komentar }      ← komentari nisu dopušteni

Većina poruka „Unexpected token” koje ćete vidjeti je jedna od ovih. JSON validator ili formatter pokazat će vam točan redak.

Radni primjer: JSON kroz aplikaciju

Kupac rezervira šišanje u aplikaciji za salon. Evo gdje se pojavljuje JSON:

  1. Obrazac za rezervaciju šalje ovo backendu aplikacije:
{ "service": "Šišanje", "startsAt": "2026-10-03T14:00:00Z", "name": "Lena Park" }
  1. Backend sprema rezervaciju u bazu podataka i odgovara statusom 201 Created i ovim:
{ "id": 5001, "status": "confirmed" }
  1. Ako je termin već zauzet, može umjesto toga odgovoriti statusom 409 Conflict i ovim:
{ "error": "slot_taken", "message": "Taj termin je upravo rezerviran. Odaberite drugi." }

Stranica čita status ili error i prikazuje odgovarajuću poruku. Ako umjesto toga stranica prikaže prazan ekran, otvaranje alata za programere u pregledniku (kartica Network) pokazalo bi vam ovaj JSON, što je često najbrži trag za pronalaženje greške.

Ključni pojmovi

PojamZnačenje
KljučNaziv u paru naziva i vrijednosti, poput "email".
ParsiranjePretvaranje JSON teksta u podatke koje program može koristiti.
Serijalizacija / stringifyPretvaranje podataka u JSON tekst za slanje ili spremanje.
PayloadPodaci poslani u zahtjevu ili odgovoru.
ShemaOpis oblika koji podaci trebaju imati: koja polja, koje vrste. JSON Schema je standardni način da se ona zapiše.
JSONBPostgresov binarni JSON stupac, koji se može indeksirati i pretraživati.
NDJSON / JSON LinesJedan JSON objekt po retku, čest za logove i streaming.

Česte zablude

  • „JSON je JavaScript.” Nastao je iz sintakse JavaScripta, ali nije vezan za jezik. Python, Java, C#, Go i ostali ga čitaju.
  • „Brojevi u navodnicima su u redu.” "35" je niz znakova, a ne broj. Miješanje uzrokuje greške poput "35" + "5" koje postaje "355". Novac se često bolje sprema kao cijeli iznos u centima (3550) kako bi se izbjegli problemi zaokruživanja.
  • „JSON je siguran jer su to samo podaci.” JSON može nositi bilo što, uključujući tajne. Ne stavljajte API ključeve u JSON koji se šalje pregledniku.
  • „Stavi sve u JSON stupac.” Zgodno za fleksibilne dodatke, ali podaci po kojima pretražujete, filtrirate ili spajate obično pripadaju u prave stupce.
  • „AI uvijek vraća ispravan JSON.” Modeli mogu dodati dodatni tekst ili pokvariti format. Mnogi pružatelji nude način rada sa strukturiranim izlazom, ali vaš kod ipak treba provjeriti ono što dobije.

Što tražiti od AI alata za izradu

  • „Pokaži mi primjer JSON-a koji ovaj endpoint vraća.”
  • „Vraćaj greške kao JSON s kodom error i porukom message čitljivom čovjeku.”
  • „Spremaj datume kao ISO 8601 nizove znakova u UTC-u i pretvaraj u lokalno vrijeme tek na ekranu.”
  • „Spremaj cijene kao cijele iznose u centima.”
  • „Validiraj ulazni JSON na serveru i odbij zahtjeve s nedostajućim poljima ili pogrešnim vrstama.”
  • „Kad pozivaš AI model, traži JSON u točno ovom obliku i provjeri ga prije korištenja.”

JSON u Mythexu

Ne morate ručno pisati JSON u Mythexu. Opišete što želite, a agent napiše kod koji ga šalje i čita. Ipak, korisno ga je prepoznati: kad nešto pukne, zalijepljena JSON greška u chat daje agentu precizan trag. Vodič REST API backend u dokumentaciji od početka traži „jasne JSON greške”, a recept integriraj bilo koji API pokriva pozivanje vanjskih servisa. Za širu sliku pogledajte REST vs GraphQL i kako ispraviti aplikaciju izrađenu s AI-jem.

Pitanja

Što je JSON, jednostavno rečeno?

JSON (JavaScript Object Notation) je tekstualni format za zapisivanje strukturiranih podataka kao parova naziva i vrijednosti, na primjer „name”: „Lena”. Gotovo svaki web API ga koristi za slanje podataka naprijed-natrag, a mnoge aplikacije ga koriste za postavke i spremljene podatke.

Je li JSON programski jezik?

Ne. JSON je format podataka, a ne jezik. Sam ne može ništa učiniti, samo opisuje podatke. Iako potječe iz JavaScripta, praktično svaki programski jezik ga može čitati i pisati.

Koja je razlika između JSON-a i JavaScript objekta?

Izgledaju slično, ali JSON je strožiji. U JSON-u svaki ključ mora biti u dvostrukim navodnicima, nizovi znakova također koriste dvostruke navodnike, nema komentara ni završnih zareza, a vrijednosti su ograničene na nizove znakova, brojeve, true, false, null, objekte i nizove.

Zašto moj JSON kaže da je neispravan?

Uobičajeni uzroci su završni zarez nakon zadnje stavke, jednostruki navodnici umjesto dvostrukih, nedostajući zarez između stavki, nezatvorena zagrada ili komentar. Zalijepite ga u JSON validator i on će pokazati redak.

Mythex · Pricing · Izradite bilo što uz AI · Predlošci za web stranice i aplikacije · Mythex u usporedbi · Rječnik izrade aplikacija uz AI · Besplatni alati za izradu aplikacija uz AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)