JSON क्या है? उदाहरणों के साथ सरल भाषा में गाइड
JSON (JavaScript Object Notation) structured data लिखने का एक सरल text format है, जैसे कोई customer, कोई order या products की सूची, जिसमें नाम और मान जोड़े होते हैं। लोगों के लिए इसे पढ़ना आसान है और programs के लिए बनाना और parse करना। जब apps और services web पर data का आदान-प्रदान करते हैं, तो JSON सबसे आम format है।
AI से बनाते समय JSON क्यों मायने रखता है
आप JSON से लगातार टकराएँगे, भले ही आप कभी code न लिखें:
- APIs। जब आपके app की screens अपने backend से data लोड करती हैं, या आपका backend किसी payment, email या AI service को कॉल करता है, तो data आम तौर पर JSON में सफर करता है। देखें API क्या है।
- Settings files। कई project configuration files JSON हैं, जैसे
package.json, जिसमें JavaScript project की dependencies लिखी होती हैं। - Databases। Postgres किसी column (
jsonbtype) में JSON सहेज सकता है, उस data के लिए जो साफ rows और columns में नहीं बैठता। देखें Postgres क्या है। - AI का output। जब आप चाहते हैं कि AI model कुछ ऐसा लौटाए जिसे program इस्तेमाल कर सके, जैसे tags की सूची या invoice के fields, तो आम तौर पर JSON माँगते हैं।
- Error messages और logs। कई errors JSON में आते हैं, और उन्हें पढ़ना अक्सर यह जानने का सबसे तेज़ तरीका है कि गड़बड़ कहाँ हुई।
JSON पढ़ना आपको यह जाँचने देता है कि आपके app को सचमुच क्या मिला, कोई missing field कैसे पकड़ें, और समस्याएँ अपने AI builder को सटीक रूप से कैसे बताएँ।
रोज़ की मिसाल
एक कागज़ का फॉर्म सोचिए: नाम: ____, फ़ोन: ____, न्यूज़लेटर: ☐ हाँ ☐ नहीं। हर प्रविष्टि एक label है, जिसके बगल में एक मान है। JSON वही फॉर्म text के रूप में लिखा है, एक सख्त layout में, जिसे computer बिना अंदाज़े के पढ़ सकता है। और फॉर्म की तरह JSON में भी हिस्सों के भीतर हिस्से हो सकते हैं (एक पते का block जिसमें गली, शहर और पिन कोड हो) और सूचियाँ (कई फ़ोन नंबर)।
JSON कैसा दिखता है
यह एक booking का 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"
}
}
इसे ऐसे पढ़ें:
- घुंघराले कोष्ठक
{ }एक object को घेरते हैं, यानी name/value जोड़ों का एक समूह। - हर जोड़ा
"name": valueहै, जो commas से अलग होता है। - चौकोर कोष्ठक
[ ]एक array को घेरते हैं, यानी एक क्रमबद्ध सूची। - Objects और arrays एक-दूसरे के अंदर रह सकते हैं, जैसे
contactऔरextrasकरते हैं।
Value के छह प्रकार
JSON में सिर्फ छह प्रकार के values होते हैं। यही छोटी सूची इसके हर जगह चलने का एक बड़ा कारण है।
| प्रकार | उदाहरण | नोट |
|---|---|---|
| String (text) | "Lena Park" | हमेशा double quotes |
| Number | 35.5, -2, 1e6 | कोई quotes नहीं; currency के चिह्न नहीं |
| Boolean | true, false | छोटे अक्षर, बिना quotes |
| Null | null | “कोई मान नहीं” |
| Object | { "city": "Leeds" } | नाम वाले मान |
| Array | [1, 2, 3] | क्रमबद्ध सूची; items किसी भी प्रकार के हो सकते हैं |
इसमें date का कोई अलग प्रकार नहीं है। Dates को strings के रूप में लिखा जाता है, आम तौर पर ऊपर दिखाए गए ISO 8601 format में (2026-10-03T14:00:00Z, जहाँ Z का मतलब UTC है)। इस format पर सहमति होने से time-zone bugs की एक पूरी श्रेणी से बचा जा सकता है।
सख्त नियम (जहाँ से गलतियाँ आती हैं)
JSON दिखने से ज़्यादा सख्त है। ये सब अमान्य हैं:
{ name: "Lena" } ← double quotes के बिना key
{ 'name': 'Lena' } ← single quotes
{ "a": 1, "b": 2, } ← trailing comma
{ "a": 1 "b": 2 } ← comma गायब
{ "a": 1 // comment } ← comments की अनुमति नहीं
ज़्यादातर “Unexpected token” errors इन्हीं में से एक होते हैं। JSON validator या formatter आपको सटीक line दिखा देगा।
उदाहरण: एक app के ज़रिए JSON
एक ग्राहक salon app में बाल कटवाने की booking करता है। यहाँ JSON कहाँ आता है:
- Booking form app के backend को यह भेजता है:
{ "service": "Haircut", "startsAt": "2026-10-03T14:00:00Z", "name": "Lena Park" }
- Backend booking को database में सहेजता है और status
201 Createdके साथ यह लौटाता है:
{ "id": 5001, "status": "confirmed" }
- अगर समय पहले से बुक था, तो वह इसके बजाय status
409 Conflictऔर यह लौटा सकता है:
{ "error": "slot_taken", "message": "That time was just booked. Please pick another." }
Page status या error पढ़कर सही संदेश दिखाता है। अगर page की जगह खाली स्क्रीन दिखे, तो browser के developer tools (Network tab) को खोलने पर आपको यही JSON दिख जाएगा, जो अक्सर यह जानने का सबसे तेज़ सुराग होता है कि गड़बड़ क्या हुई।
मुख्य शब्द
| शब्द | अर्थ |
|---|---|
| Key | name/value जोड़े में नाम, जैसे "email"। |
| Parse | JSON text को ऐसे data में बदलना जिसे program इस्तेमाल कर सके। |
| Serialize / stringify | data को भेजने या सहेजने के लिए JSON text में बदलना। |
| Payload | request या response में भेजा गया data। |
| Schema | यह वर्णन कि data का आकार कैसा होना चाहिए, कौन-से fields और किस प्रकार के। JSON Schema इसे लिखने का एक मानक तरीका है। |
| JSONB | Postgres का binary JSON column type, जिस पर index लगाया और query किया जा सकता है। |
| NDJSON / JSON Lines | हर पंक्ति में एक JSON object, logs और streaming में आम। |
आम गलतफहमियाँ
- “JSON ही JavaScript है।” इसका syntax JavaScript से आया है, पर यह language-independent है; Python, Java, C#, Go और बाकी सब इसे पढ़ते हैं।
- “Quotes में लिखे numbers ठीक हैं।”
"35"एक string है, number नहीं। मिलाने से bugs आते हैं, जैसे"35" + "5"का"355"बन जाना। पैसे अक्सर पूरे cents (3550) के रूप में सहेजना बेहतर होता है, ताकि rounding की समस्या न आए। - “JSON सुरक्षित है क्योंकि यह बस data है।” JSON कुछ भी ले जा सकता है, secrets भी। Browser को भेजे जाने वाले JSON में API keys न डालें।
- “सब कुछ एक JSON column में डाल दो।” लचीले extra data के लिए यह सुविधाजनक है, पर जिस data पर आप search, filter या join करते हैं, वह आम तौर पर सही columns में होना चाहिए।
- “AI हमेशा सही JSON लौटाता है।” Models अतिरिक्त text जोड़ सकते हैं या format तोड़ सकते हैं। कई providers structured-output mode देते हैं; फिर भी आपके code को जो वापस आया उसकी जाँच करनी चाहिए।
अपने AI builder से क्या माँगें
- “मुझे इस endpoint द्वारा लौटाए गए JSON का एक उदाहरण दिखाओ।”
- “Errors को JSON में लौटाओ, जिसमें एक
errorcode और इंसानों के पढ़ने लायकmessageहो।” - “Dates को UTC में ISO 8601 strings के रूप में सहेजो, और स्क्रीन पर ही local time में बदलो।”
- “Prices को integer cents में सहेजो।”
- “आने वाले JSON को server पर validate करो, और गायब या गलत type के fields वाले requests को रद्द करो।”
- “AI model को कॉल करते समय JSON को इसी सटीक shape में माँगो, और इस्तेमाल करने से पहले उसकी जाँच करो।”
Mythex में JSON
Mythex में आपको JSON हाथ से लिखने की ज़रूरत नहीं है। आप बताते हैं कि आपको क्या चाहिए, और agent वह code लिखता है जो JSON भेजता और पढ़ता है। फिर भी इसे पहचानना उपयोगी है: जब कुछ टूटता है, तो chat में JSON error चिपकाने से agent को सटीक सुराग मिलता है। Docs की REST API backend recipe शुरू से ही “साफ JSON errors” माँगती है, और कोई भी API integrate करें recipe बाहरी services को कॉल करने के बारे में है। बड़ी तस्वीर के लिए देखें REST बनाम GraphQL और AI से बने app को debug कैसे करें।
सवाल
सरल शब्दों में JSON क्या है?
JSON (JavaScript Object Notation) structured data लिखने का एक plain-text format है, जिसमें नाम और मान होते हैं, जैसे "name": "Lena"। लगभग हर web API data आगे-पीछे भेजने के लिए इसका इस्तेमाल करता है, और कई apps settings और सहेजे गए data के लिए।
क्या JSON एक programming language है?
नहीं। JSON एक data format है, language नहीं। यह अपने आप कुछ नहीं कर सकता; यह सिर्फ data का वर्णन करता है। यह JavaScript से निकला है, फिर भी लगभग हर programming language इसे पढ़ और लिख सकती है।
JSON और JavaScript object में क्या फर्क है?
दोनों एक जैसे दिखते हैं, पर JSON ज़्यादा सख्त है। JSON में हर key double quotes में होनी चाहिए, strings double quotes में होती हैं, कोई comments नहीं होते, कोई trailing commas नहीं होते, और values सिर्फ strings, numbers, true, false, null, objects और arrays हो सकती हैं।
मेरा JSON invalid क्यों बताता है?
आम कारण हैं: आखिरी item के बाद trailing comma, double quotes की जगह single quotes, items के बीच comma का न होना, बिना बंद हुआ bracket, या कोई comment। इसे JSON validator में चिपकाएँ, वह सटीक line बता देगा।