JSON म्हणजे काय? उदाहरणांसह सोपे मार्गदर्शक
JSON (JavaScript Object Notation) हा संरचित डेटा लिहिण्यासाठी एक साधा मजकूर फॉरमॅट आहे — जसे एक ग्राहक, एक ऑर्डर किंवा उत्पादनांची यादी — नावे आणि मूल्यांच्या जोड्यांच्या स्वरूपात. लोकांना तो वाचायला सोपा आहे, आणि प्रोग्राम्सना तो तयार करायला व पार्स करायला सोपा आहे. ॲप्स आणि सेवा वेबवरून डेटा देवाणघेवाण करतात तेव्हा JSON हा सर्वात सामान्य फॉरमॅट आहे.
AI सोबत बनवताना JSON का महत्त्वाचे आहे
तुम्ही कधीही कोड लिहिला नसला तरी JSON तुम्हाला सतत भेटेल:
- APIs. तुमच्या ॲपची स्क्रीन्स त्याच्या बॅकएंडमधून डेटा लोड करतात, किंवा तुमचा बॅकएंड पेमेंट, ईमेल किंवा AI सेवेला कॉल करतो, तेव्हा डेटा सहसा JSON मध्ये प्रवास करतो. API म्हणजे काय ते पाहा.
- सेटिंग्ज फाइल्स. अनेक प्रोजेक्ट कॉन्फिगरेशन फाइल्स JSON असतात — उदाहरणार्थ
package.json, जी JavaScript प्रोजेक्टची dependencies यादी करते. - डेटाबेस. Postgres नीट rows आणि columns मध्ये न बसणाऱ्या डेटासाठी एका column मध्ये 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"
}
}
ते असे वाचा:
- कुरळे कंस
{ }एक object गुंडाळतात — नाव/मूल्य जोड्यांचा संच. - प्रत्येक जोडी
"name": valueअशी असते, स्वल्पविरामांनी वेगळी केलेली. - चौकोनी कंस
[ ]एक array गुंडाळतात — क्रमाने लावलेली यादी. - Objects आणि arrays एकमेकांच्या आत असू शकतात, जसे
contactआणिextrasआहेत.
सहा प्रकारची मूल्ये
JSON मध्ये फक्त सहा प्रकारची मूल्ये असतात. ही छोटी यादी हेच एक मोठे कारण आहे की तो सर्वत्र चालतो.
| प्रकार | उदाहरण | टिप |
|---|---|---|
| स्ट्रिंग (मजकूर) | "Lena Park" | नेहमी दुहेरी अवतरणे |
| नंबर | 35.5, -2, 1e6 | अवतरणे नाहीत; चलन चिन्हे नाहीत |
| Boolean | true, false | लहान अक्षरे, अवतरणे नाहीत |
| Null | null | “कोणतेही मूल्य नाही” |
| Object | { "city": "Leeds" } | नावाची मूल्ये |
| Array | [1, 2, 3] | क्रमाने यादी; आयटम्स कोणत्याही प्रकाराचे असू शकतात |
तारखेचा वेगळा प्रकार नाही. तारखा स्ट्रिंग म्हणून लिहिल्या जातात, साधारणपणे वर दाखवलेल्या ISO 8601 फॉरमॅटमध्ये (2026-10-03T14:00:00Z, जिथे Z म्हणजे UTC). त्या फॉरमॅटवर सहमती ठेवल्याने टाइम-झोन बगचा संपूर्ण प्रकार टाळता येतो.
कडक नियम (जिथून एरर येतात)
JSON दिसतो त्यापेक्षा कमी सहनशील आहे. हे सर्व अवैध आहेत:
{ name: "Lena" } ← दुहेरी अवतरणांशिवाय key
{ 'name': 'Lena' } ← एकेरी अवतरणे
{ "a": 1, "b": 2, } ← ट्रेलिंग स्वल्पविराम
{ "a": 1 "b": 2 } ← स्वल्पविराम गहाळ
{ "a": 1 // comment } ← कॉमेंट्सना परवानगी नाही
तुम्हाला दिसणाऱ्या बहुतेक “Unexpected token” एरर्स यापैकीच एक असतात. JSON validator किंवा formatter तुम्हाला नेमकी ओळ दाखवेल.
एक उदाहरण: ॲपमधून जाणारा JSON
एक ग्राहक सलून ॲपमध्ये हेअरकटची बुकिंग करतो. JSON कुठे दिसतो ते येथे आहे:
- बुकिंग फॉर्म हे ॲपच्या बॅकएंडला पाठवतो:
{ "service": "Haircut", "startsAt": "2026-10-03T14:00:00Z", "name": "Lena Park" }
- बॅकएंड बुकिंग डेटाबेस मध्ये साठवतो आणि
201 Createdस्टेटससह हे परत पाठवतो:
{ "id": 5001, "status": "confirmed" }
- जर ती वेळ आधीच घेतली गेली असेल, तर तो त्याऐवजी
409 Conflictस्टेटससह हे परत पाठवू शकतो:
{ "error": "slot_taken", "message": "That time was just booked. Please pick another." }
पेज status किंवा error वाचते आणि योग्य मेसेज दाखवते. जर पेजवर त्याऐवजी रिकामी स्क्रीन दिसली, तर ब्राउझरची developer tools (Network टॅब) उघडल्यास तुम्हाला हा JSON दिसेल — काय चुकले याचा अनेकदा सर्वात जलद सुगावा.
मुख्य संज्ञा
| संज्ञा | अर्थ |
|---|---|
| Key | नाव/मूल्य जोडीतील नाव, जसे "email". |
| Parse | JSON मजकूराला प्रोग्रामला वापरता येणाऱ्या डेटामध्ये बदलणे. |
| Serialize / stringify | पाठवण्यासाठी किंवा साठवण्यासाठी डेटाला JSON मजकुरात बदलणे. |
| Payload | रिक्वेस्ट किंवा रिस्पॉन्समध्ये पाठवलेला डेटा. |
| Schema | डेटाचा अपेक्षित आकार याचे वर्णन — कोणती फील्ड्स, कोणते प्रकार. JSON Schema हा असे लिहिण्याचा मानक मार्ग आहे. |
| JSONB | Postgres चा बायनरी JSON column प्रकार, जो index करता येतो आणि query करता येतो. |
| NDJSON / JSON Lines | प्रत्येक ओळीत एक JSON object, लॉग्स आणि streaming साठी सामान्य. |
सामान्य गैरसमज
- “JSON म्हणजे JavaScript.” तो JavaScript च्या सिंटॅक्समधून आला, पण तो भाषा-स्वतंत्र आहे; Python, Java, C#, Go आणि बाकी सर्व तो वाचतात.
- “अवतरणांतील नंबर्स चालतात.”
"35"हा स्ट्रिंग आहे, नंबर नाही. ते मिसळल्याने बग्स होतात, जसे"35" + "5"चे"355"होणे. पैसे अनेकदा पूर्ण सेंट्समध्ये (3550) साठवणे चांगले, जेणेकरून राउंडिंगच्या समस्या टाळता येतील. - “JSON सुरक्षित आहे कारण तो फक्त डेटा आहे.” JSON मध्ये काहीही असू शकते, सिक्रेट्ससह. ब्राउझरकडे पाठवलेल्या JSON मध्ये API keys ठेवू नका.
- “सर्वकाही एका JSON column मध्ये ठेवा.” लवचिक अतिरिक्त माहितीसाठी उपयोगी, पण तुम्ही शोधता, फिल्टर करता किंवा join करता तो डेटा सहसा योग्य columns मध्येच असावा.
- “AI नेहमी वैध JSON परत देते.” मॉडेल्स अतिरिक्त मजकूर जोडू शकतात किंवा फॉरमॅट मोडू शकतात. अनेक प्रोव्हायडर्स structured-output मोड देतात; तरीही तुमच्या कोडने परत आलेले तपासायला हवे.
तुमच्या AI बिल्डरला काय मागावे
- “हा endpoint परत देणाऱ्या JSON चे उदाहरण दाखवा.”
- “एररमध्ये
errorकोड आणि माणसाला वाचता येणाराmessageअसलेला JSON परत करा.” - “तारखा UTC मध्ये ISO 8601 स्ट्रिंग म्हणून साठवा, आणि स्थानिक वेळेत फक्त स्क्रीनवर रूपांतरित करा.”
- “किंमती पूर्णांक सेंट्स म्हणून साठवा.”
- “येणारा JSON सर्व्हरवर तपासा आणि गहाळ किंवा चुकीच्या प्रकाराच्या फील्ड्स असलेल्या रिक्वेस्ट्स नाकारा.”
- “AI मॉडेलला कॉल करताना, या अचूक आकारात JSON मागा आणि वापरण्यापूर्वी तो तपासा.”
Mythex मधील JSON
Mythex मध्ये तुम्हाला JSON हाताने लिहिण्याची गरज नाही — तुम्ही काय हवे ते सांगता आणि एजंट तो पाठवणारा आणि वाचणारा कोड लिहितो. तरीही तो ओळखता येणे उपयोगी आहे: काही तुटले की JSON एरर चॅटमध्ये पेस्ट केल्यास एजंटला नेमका सुगावा मिळतो. डॉक्समधील REST API बॅकएंड रेसिपी सुरुवातीपासूनच “स्पष्ट JSON एरर्स” मागते, आणि कोणताही API इंटिग्रेट करा ही रेसिपी बाहेरच्या सेवांना कॉल करण्याबद्दल आहे. मोठे चित्र पाहण्यासाठी REST विरुद्ध GraphQL आणि AI ने बनवलेल्या ॲपमधील बग कसे शोधायचे पाहा.
प्रश्न
सोप्या शब्दांत JSON म्हणजे काय?
JSON (JavaScript Object Notation) हा एक साधा मजकूर फॉरमॅट आहे, जो संरचित डेटा नावे आणि मूल्यांच्या स्वरूपात लिहिण्यासाठी वापरला जातो, जसे “name”: “Lena”. जवळजवळ प्रत्येक वेब API डेटा पाठवण्या-घेण्यासाठी त्याचा वापर करते, आणि अनेक ॲप्स सेटिंग्ज व साठवलेल्या डेटासाठी तो वापरतात.
JSON ही प्रोग्रामिंग भाषा आहे का?
नाही. JSON हा डेटा फॉरमॅट आहे, भाषा नाही. तो स्वतःहून काहीही करू शकत नाही — तो फक्त डेटाचे वर्णन करतो. तो JavaScript मधून आला असला तरी, जवळजवळ प्रत्येक प्रोग्रामिंग भाषा तो वाचू आणि लिहू शकते.
JSON आणि JavaScript object मधला फरक काय आहे?
ते सारखे दिसतात, पण JSON अधिक कडक आहे. JSON मध्ये प्रत्येक key दुहेरी अवतरणात असावी लागते, स्ट्रिंग्ससाठी दुहेरी अवतरण वापरले जातात, कॉमेंट्स नसतात, शेवटी ट्रेलिंग स्वल्पविराम नसतो, आणि व्हॅल्यू फक्त स्ट्रिंग्स, नंबर्स, true, false, null, objects आणि arrays असू शकतात.
माझा JSON invalid का आहे असे का म्हणतो?
नेहमीची कारणे म्हणजे शेवटच्या आयटमनंतर ट्रेलिंग स्वल्पविराम, दुहेरी अवतरणांऐवजी एकेरी अवतरणे, आयटम्समध्ये स्वल्पविराम गहाळ असणे, बंद न केलेला कंस, किंवा कॉमेंट. तो JSON validator मध्ये पेस्ट करा, आणि तो ओळ दाखवेल.