Ուղեցույցներ

Ի՞նչ է JSON-ը։ Պարզ ուղեցույց օրինակներով

JSON-ը (JavaScript Object Notation) կառուցվածքավորված տվյալներ գրելու պարզ տեքստային ձևաչափ է՝ օրինակ՝ հաճախորդ, պատվեր կամ ապրանքների ցանկ, որտեղ անունները զուգակցված են արժեքների հետ։ Այն հեշտ է մարդկանց համար կարդալու և ծրագրերի համար արտադրելու ու վերլուծելու։ Երբ հավելվածներն ու ծառայությունները տվյալներ են փոխանակում վեբով, JSON-ն ամենատարածված ձևաչափն է։

Ինչու է JSON-ը կարևոր AI-ով կառուցելիս

JSON-ի հետ կհանդիպեք անընդհատ, նույնիսկ եթե երբեք կոդ չեք գրում․

  • API-ներ։ Երբ ձեր հավելվածի էկրանները տվյալներ են բեռնում իր backend-ից, կամ ձեր backend-ը կանչում է վճարման, էլ. փոստի կամ AI ծառայություն, տվյալները սովորաբար ուղևորվում են JSON-ով։ Տես ինչ է API-ն։
  • Կարգավորումների ֆայլեր։ Շատ նախագծային կոնֆիգուրացիոն ֆայլեր JSON են, օրինակ՝ package.json-ը, որը թվարկում է JavaScript նախագծի կախվածությունները։
  • Տվյալների բազաներ։ Postgres-ը կարող է JSON պահել սյունակում (jsonb տիպը) տվյալների համար, որոնք չեն տեղավորվում կանոնավոր աղյուսակներում։ Տես ինչ է Postgres-ը։
  • AI-ի արդյունքը։ Երբ ուզում եք, որ AI մոդելը վերադարձնի այն, ինչ ծրագիրը կարող է օգտագործել՝ թագերի ցանկ, հանված հաշվի դաշտեր, սովորաբար խնդրում եք JSON։
  • Սխալների հաղորդագրություններ և լոգեր։ Շատ սխալներ գալիս են JSON-ով, և դրանք կարդալը հաճախ ամենաարագ ճանապարհն է պարզելու, թե ինչ է սխալ։

JSON կարդալը թույլ է տալիս ստուգել, թե ինչ է ստացել ձեր հավելվածը, նկատել բացակայող դաշտը և ճշգրիտ նկարագրել խնդիրը ձեր AI կառուցողին։

Ամենօրյա անալոգիա

Պատկերացրեք թղթե ձև․ Անուն՝ ____, Հեռախոս՝ ____, Նորություններ՝ ☐ այո ☐ ոչ։ Յուրաքանչյուր գրառում պիտակ է և դրա կողքին արժեք։ JSON-ը այդ ձևն է գրված տեքստով՝ խիստ դասավորությամբ, որը համակարգիչը կարող է կարդալ առանց կռահելու։ Եվ ինչպես ձևերում, JSON-ը կարող է ունենալ բաժիններ բաժինների ներսում (հասցեի բլոկ՝ փողոց, քաղաք, փոստային ինդեքս) և ցուցակներ (մի քանի հեռախոսահամար)։

Ինչպես է նայվում JSON-ը

Ահա մեկ ամրագրում JSON-ով՝

{
  "id": 5001,
  "customer": "Lena Park",
  "service": "Haircut",
  "startsAt": "2026-10-03T14:00:00Z",
  "price": 35.5,
  "paid": false,
  "notes": null,
  "extras": ["beard trim", "hot towel"],
  "contact": {
    "email": "lena@example.com",
    "phone": "+44 20 7946 0000"
  }
}

Կարդալը՝

  • Գանգուր փակագծերը { } փաթաթում են օբյեկտ-ը՝ անունների և արժեքների զույգերի հավաքածու։
  • Յուրաքանչյուր զույգ "name": value է, իրար անջատված ստորակետներով։
  • Քառակուսի փակագծերը [ ] փաթաթում են զանգված-ը՝ հերթականությամբ ցուցակ։
  • Օբյեկտները և զանգվածները կարող են գտնվել միմյանց մեջ, ինչպես contact-ը և extras-ը։

Արժեքների վեց տեսակ

JSON-ն ունի ընդամենը վեց տեսակի արժեք։ Այս փոքր ցանկն է մասամբ պատճառը, որ այն աշխատում է ամենուր։

ՏեսակՕրինակՆշումներ
Տող (string)"Lena Park"Միշտ կրկնակի չակերտներ
Թիվ35.5, -2, 1e6Առանց չակերտների; առանց արժույթի նշանների
Բուլյանtrue, falseՓոքրատառ, առանց չակերտների
Nullnull«Արժեք չկա»
Օբյեկտ{ "city": "Leeds" }Անվանված արժեքներ
Զանգված[1, 2, 3]Հերթականությամբ ցուցակ․ տարրերը կարող են լինել ցանկացած տիպի

Ամսաթվի տիպ չկա։ Ամսաթվերը գրվում են որպես տողեր, սովորաբար ISO 8601 ձևաչափով, ինչպես վերևում (2026-10-03T14:00:00Z, որտեղ Z-ը նշանակում է UTC)։ Այդ ձևաչափին համաձայնելը խուսափում է ժամային գոտիների սխալների ամբողջ կատեգորիայից։

Խիստ կանոնները (որտեղից են գալիս սխալները)

JSON-ը ավելի քիչ ներողամիտ է, քան թվում է։ Սրանք բոլորը անվավեր են՝

{ name: "Lena" }            ← բանալի առանց կրկնակի չակերտների
{ 'name': 'Lena' }          ← մեկ չակերտներ
{ "a": 1, "b": 2, }         ← վերջում ստորակետ
{ "a": 1 "b": 2 }           ← բացակայող ստորակետ
{ "a": 1 // comment }       ← մեկնաբանությունները չեն թույլատրվում

Ամենաշատ «Unexpected token» սխալները հենց այս կանոններից մեկն են խախտում։ JSON վալիդատորը կցուցադրի ճիշտ տողը։

Օրինակ․ JSON-ը հավելվածի միջով

Հաճախորդը ամրագրում է մազի կտրվածք սրահի հավելվածում։ Ահա, թե որտեղ է հայտնվում JSON-ը․

  1. Ամրագրման ձևը ուղարկում է հավելվածի backend-ին՝
{ "service": "Haircut", "startsAt": "2026-10-03T14:00:00Z", "name": "Lena Park" }
  1. Backend-ը պահում է ամրագրումը տվյալների բազայում և պատասխանում է 201 Created կարգավիճակով և՝
{ "id": 5001, "status": "confirmed" }
  1. Եթե ժամը արդեն զբաղված էր, այն կարող է փոխարենը պատասխանել 409 Conflict-ով և՝
{ "error": "slot_taken", "message": "That time was just booked. Please pick another." }

Էջը կարդում է status-ը կամ error-ը և ցույց է տալիս ճիշտ հաղորդագրությունը։ Եթե էջը դատարկ էկրան ցույց տա, բրաուզերի մշակողի գործիքները (Network ներդիր) ցույց կտան այս JSON-ը՝ հաճախ ամենաարագ հուշումը, թե ինչն է սխալ գնացել։

Հիմնական տերմիններ

ՏերմինՆշանակություն
Բանալի (Key)Անունը անունի/արժեքի զույգում, օրինակ՝ "email"։
ParseJSON տեքստը վերածել տվյալների, որոնք ծրագիրը կարող է օգտագործել։
Serialize / stringifyՏվյալները վերածել JSON տեքստի՝ ուղարկելու կամ պահելու համար։
PayloadՀարցման կամ պատասխանի մեջ ուղարկված տվյալները։
SchemaՆկարագրություն, թե ինչ ձև պետք է ունենան տվյալները՝ որ դաշտերը, ինչ տիպերով։ JSON Schema-ն դրա ստանդարտ ձևն է։
JSONBPostgres-ի երկուական JSON սյունակի տիպ, որը կարող է ինդեքսավորվել և հարցվել։
NDJSON / JSON LinesՅուրաքանչյուր տողում մեկ JSON օբյեկտ, սովորական լոգերի և հոսքային տվյալների համար։

Սովորական թյուրըմբռնումներ

  • «JSON-ը JavaScript է»։ Այն ծագել է JavaScript-ի շարահյուսությունից, բայց լեզվից անկախ է․ Python-ը, Java-ն, C#-ը, Go-ն և մնացածը բոլորը կարդում են այն։
  • «Թվերը չակերտներում նորմալ են»։ "35"-ը տող է, ոչ թե թիվ։ Խառնումը սխալների է տանում, օրինակ՝ "35" + "5"-ը դառնում է "355"։ Փողը հաճախ ավելի լավ է պահել որպես ամբողջ սենտեր (3550), որ խուսափեն կլորացման խնդիրներից։
  • «JSON-ը անվտանգ է, որովհետև պարզապես տվյալ է»։ JSON-ը կարող է պարունակել ցանկացած բան, ներառյալ գաղտնիքները։ Մի դրեք API բանալիներ JSON-ում, որը ուղարկվում է բրաուզերին։
  • «Ամեն ինչ դրեք JSON սյունակում»։ Հարմար է ճկուն լրացուցիչ տվյալների համար, բայց այն տվյալները, որոնք որոնում, զտում կամ միացնում եք, սովորաբար պետք է գտնվեն սովորական սյունակներում։
  • «AI-ն միշտ վերադարձնում է վավեր JSON»։ Մոդելները կարող են ավելացնել լրացուցիչ տեքստ կամ խախտել ձևաչափը։ Շատ մատակարարներ առաջարկում են կառուցվածքավորված ելքի ռեժիմ, բայց ձեր կոդը դեռ պետք է ստուգի այն, ինչ վերադառնում է։

Ինչ խնդրել ձեր AI կառուցողից

  • «Ցույց տուր այն JSON-ի օրինակը, որ վերադարձնում է այս endpoint-ը։»
  • «Սխալները վերադարձրու JSON-ով՝ error կոդով և մարդու կողմից ընթեռնելի message-ով։»
  • «Ամսաթվերը պահիր որպես ISO 8601 տողեր UTC-ով և փոխարկիր տեղական ժամի միայն էկրանին։»
  • «Գները պահիր որպես ամբողջ սենտեր։»
  • «Վալիդացրու մուտքային JSON-ը սերվերում և մերժիր հարցումները, որոնցում բացակայում են դաշտեր կամ սխալ տիպ ունեն։»
  • «Երբ կանչում ես AI մոդելը, խնդրիր JSON այս ճշգրիտ ձևով և ստուգիր այն մինչև օգտագործելը։»

JSON-ը Mythex-ում

Mythex-ում JSON-ը ձեռքով գրելու կարիք չունեք․ նկարագրում եք, ինչ ուզում եք, և agent-ը գրում է կոդը, որը ուղարկում և կարդում է այն։ Այնուամենայնիվ, օգտակար է ճանաչել այն․ երբ ինչ-որ բան խափանվում է, JSON սխալը չատում տեղադրելը agent-ին տալիս է ճշգրիտ հուշում։ Փաստաթղթերի REST API backend բաղադրատոմսը հենց սկզբից խնդրում է «հստակ JSON սխալներ», իսկ integrate any API բաղադրատոմսը ծածկում է արտաքին ծառայությունների կանչը։ Ավելի լայն պատկերի համար տես REST և GraphQL և ինչպես վրիպազերծել AI-ով կառուցված հավելվածը։

Հարցեր

Ի՞նչ է JSON-ը պարզ բառերով։

JSON-ը (JavaScript Object Notation) պարզ տեքստային ձևաչափ է կառուցվածքավորված տվյալները անունների և արժեքների տեսքով գրելու համար, օրինակ՝ «name»: «Lena»։ Գրեթե բոլոր վեբ API-ները օգտագործում են այն տվյալների փոխանակման համար, իսկ շատ հավելվածներ՝ կարգավորումների և պահված տվյալների համար։

Արդյո՞ք JSON-ը ծրագրավորման լեզու է։

Ոչ։ JSON-ը տվյալների ձևաչափ է, ոչ թե լեզու։ Այն ինքնուրույն ոչինչ չի կարող անել․ միայն նկարագրում է տվյալները։ Թեև ծագել է JavaScript-ից, գործնականում յուրաքանչյուր ծրագրավորման լեզու կարող է կարդալ և գրել այն։

Ո՞րն է տարբերությունը JSON-ի և JavaScript օբյեկտի միջև։

Նրանք նման են, բայց JSON-ն ավելի խիստ է։ JSON-ում յուրաքանչյուր բանալի պետք է լինի կրկնակի չակերտներում, տողերը օգտագործում են կրկնակի չակերտներ, մեկնաբանություններ չկան, վերջում ստորակետ չի թույլատրվում, իսկ արժեքները սահմանափակված են՝ տողեր, թվեր, true, false, null, օբյեկտներ և զանգվածներ։

Ինչու՞ է իմ JSON-ը ասում, որ անվավեր է։

Սովորական պատճառներն են՝ վերջին տարրից հետո ստորակետը, մեկ չակերտները կրկնակիների փոխարեն, բացակայող ստորակետը տարրերի միջև, չփակված փակագիծը կամ մեկնաբանությունը։ Տեղադրեք այն JSON վալիդատորում, և այն կցուցադրի տողը։

Mythex · Pricing · Կառուցեք ամեն ինչ AI-ով · Կաղապարներ կայքերի և հավելվածների համար · Mythex-ի համեմատությունները · AI-ով հավելվածների ստեղծման բառարան · Անվճար գործիքներ AI-ով հավելվածներ ստեղծելու համար · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski 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 简体中文 繁體中文(香港) 繁體中文(台灣)