JSON Toolkit

JSON बनाम JSON5 बनाम JSONC

मुख्य बात: कड़ाई से सुपरसेट क्रम में: JSONC कमेंट जोड़ता है; JSON5 सिंगल कोट्स, बिना कोट की कुंजियाँ, ट्रेलिंग कॉमा और hex संख्याएँ जोड़ता है। गलत चुनाव आपके एडिटर नहीं, API को तोड़ता है।

शुरुआती~4 मिनट पढ़ें2026-10-30 को प्रकाशित2026-10-30 को अपडेट किया गया
JSON, JSON5 और JSONC की सुविधा तुलना

मुख्य बात: जब भी डेटा सिस्टम सीमा पार करे तो मानक JSON उपयोग करें, और JSONC केवल उस लोकल कॉन्फ़िग के लिए उपयोग करें जिसे इंसान संपादित करते हैं; जब सिंगल कोट्स, ट्रेलिंग कॉमा या बिना कोट की कुंजियाँ चाहिए तो JSON5 की ओर जाएँ, लेकिन पहले पुष्टि करें कि loader इसे समर्थित करता है।

एक पंक्ति में: JSONC = JSON + कमेंट; JSON5 = JSON + JavaScript आदतें।

सुविधा मैट्रिक्स

सुविधा JSON JSONC JSON5
डबल-कोट स्ट्रिंग ✅ ✅ ✅
सिंगल-कोट स्ट्रिंग ❌ ❌ ✅
बिना कोट की कुंजियाँ ❌ ❌ ✅
// लाइन कमेंट ❌ ✅ ✅
/* */ ब्लॉक कमेंट ❌ ✅ ✅
ट्रेलिंग कॉमा ❌ ❌ ✅
Hex संख्याएँ 0xFF ❌ ❌ ✅
Infinity / NaN ❌ ❌ ✅
Multi-line स्ट्रिंग ❌ ❌ ✅
मानक पार्सर द्वारा पठनीय ✅ ❌ ❌

ध्यान दें कि JSONC केवल कमेंट हल करता है। बहुत लोग मानते हैं कि "कमेंट की अनुमति देने वाला JSON" ट्रेलिंग कॉमा की भी अनुमति देता है; tsconfig.json एक पर अब भी विफल होता है।

हर एक किसके लिए है

JSON — इंटरचेंज। APIs, queues, डेटाबेस JSON columns, लॉग। मशीन-से-मशीन कुछ भी।

JSONC — एडिटर कॉन्फ़िगरेशन। VS Code इन फ़ाइलों को खुद पार्स करता है, इसलिए JSON.parse इन्हें कभी नहीं देखता। कोई RFC नहीं है; यह Microsoft के नेतृत्व वाली de facto परंपरा है।

JSON5 — इंसानों के लिए उदार सुपरसेट। लक्ष्य था "ऐसा कॉन्फ़िग जो JavaScript ऑब्जेक्ट लिटरल जैसा दिखे"। .json5 फ़ाइलों के लिए सबसे उपयुक्त जिन्हें build tools लोड करते हैं; सबसे व्यापक सिंटैक्स और सबसे संकीर्ण टूलिंग समर्थन।

चुनाव

स्थिति चुनें
Request या response bodies JSON, कोई विकल्प नहीं
MySQL / PostgreSQL में JSON columns JSON, उनके फ़ंक्शन कुछ और स्वीकार नहीं करते
व्याख्या चाहने वाला प्रोजेक्ट कॉन्फ़िग समर्थित हो तो JSONC, अन्यथा YAML
आपको JS-शैली की छूट चाहिए JSON5, loader का समर्थन पुष्टि करने के बाद
गैर-इंजीनियर इसे संपादित करेंगे YAML, इंडेंटेशन braces से बेहतर है

एक आसान जाल

JSONC फ़ाइल को सख्त JSON के रूप में पार्स करने से ऐसा एरर आता है जो कमेंट पर इशारा करता है:

SyntaxError: Unexpected token / in JSON at position 42

कमेंट हटाने से पहले जाँचें कि फ़ाइल JSONC होने के लिए है या नहीं। उसे हटा दें और दो पंक्तियों बाद ट्रेलिंग कॉमा पर अब भी अटक सकते हैं।

FAQ

JSONC और JSON5 में कैसे चुनूँ?

जब कमेंट ही एकमात्र आवश्यकता हो तो JSONC उपयोग करें: यह JSON के ऊपर // और /* */ जोड़ता है, और VS Code का settings.json व tsconfig.json इसे उपयोग करते हैं। जब आपको सिंगल कोट्स, बिना कोट की कुंजियाँ, ट्रेलिंग कॉमा, hex संख्याएँ या multi-line स्ट्रिंग भी चाहिए तो JSON5 उपयोग करें। दोनों loader पर निर्भर हैं, इसलिए पुष्टि करें कि फ़ाइल पढ़ने वाला टूल इसे समर्थित करता है।

JSONC फ़ाइल को मानक JSON के रूप में क्यों नहीं पढ़ा जा सकता?

JSONC एक de facto परंपरा है, अलग RFC नहीं, इसलिए मानक पार्सर कमेंट अस्वीकार करते हैं। ऐसी फ़ाइल पर JSON.parse Unexpected token / throw करता है, जो डेटा के बजाय कमेंट पर इशारा करता है। केवल एडिटर या समर्पित पार्सर द्वारा पढ़ा जाने वाला कॉन्फ़िग JSONC के रूप में लिखा जाना चाहिए।

क्या API को JSON5 फ़ाइल भेजनी चाहिए?

नहीं। APIs, डेटाबेस JSON columns और queues सख्त JSON पार्स करते हैं, इसलिए JSON5 के सिंगल कोट्स, बिना कोट की कुंजियाँ और ट्रेलिंग कॉमा अस्वीकार हो जाते हैं। JSON5 इंसानों द्वारा संपादित लोकल कॉन्फ़िग के लिए है; सिस्टम सीमा पार करने से पहले इसे मानक JSON में बदलें।

आगे पढ़ें

मेल खाते उपकरण

संबंधित लेख

JSON5 और JSONC: comments वाला JSON

दोनों dialects इसलिए हैं क्योंकि मनुष्यों द्वारा लिखी config को comments और trailing commas चाहिए, पर उनका syntax और पारिस्थितिकी तंत्र अलग है, इसलिए गलत चुनाव आपकी toolchain को फँसा देता है।

शुरुआती~10 मिनट पढ़ें2026-10-30 को अपडेट किया गया

कॉन्फ़िगरेशन, fixtures और स्थानीय डेटा के लिए JSON प्रबंधित करना

कॉन्फ़िगरेशन को परतों में और सत्यापित होना चाहिए; fixtures को निर्धारक, पठनीय, और diff-योग्य होना चाहिए। यदि इन दो प्रकार की फ़ाइलों को ख़राब तरीके से प्रबंधित किया जाए, तो समस्या-समाधान की लागत लंबे समय तक ऊँची रहती है।

शुरुआती~10 मिनट पढ़ें2026-10-30 को अपडेट किया गया

टूल उपयोग FAQ: डेटा, फ़ाइलें और एक्सपोर्ट

क्या डेटा अपलोड होता है, कितनी बड़ी फ़ाइल काम करती है, क्या कुछ लोकल संग्रहीत होता है, चीनी escape में क्यों बदल जाता है: दस प्रश्न जो ऑनलाइन JSON टूल की असली सीमाएँ स्पष्ट करते हैं।

शुरुआती~10 मिनट पढ़ें2026-10-30 को अपडेट किया गया