JSON (JavaScript Object Notation) एक हल्का डेटा इंटरचेंज फ़ॉर्मेट है जो डेटा का प्रतिनिधित्व करने के लिए कुंजी-मूल्य जोड़े और ऐरे का उपयोग करता है। इसकी सादगी, पठनीयता और क्रॉस-भाषा प्रकृति के कारण, यह वेब API, कॉन्फ़िगरेशन फ़ाइलों, लॉग और फ्रंटएंड-बैकएंड डेटा ट्रांसमिशन के लिए वास्तविक मानक बन गया है। JSON में केवल छह बुनियादी मूल्य प्रकार हैं: स्ट्रिंग, संख्या, बूलियन, null, ऑब्जेक्ट और ऐरे। इसके सिंटैक्स नियमों को RFC 8259 और ECMA-404 द्वारा संयुक्त रूप से परिभाषित किया गया है।
JSON फ़ॉर्मेटिंग (जिसे JSON ब्यूटीफिकेशन भी कहा जाता है) डेटा सामग्री को बदले बिना कॉम्पैक्ट JSON में उचित इंडेंटेशन और लाइन ब्रेक जोड़ने की प्रक्रिया है, इसे मानव द्वारा पढ़ने में आसान पदानुक्रमित संरचना में व्यवस्थित करती है। API प्रतिक्रियाओं, लॉग और स्टोरेज में JSON अक्सर एक ही लाइन में संकुचित होता है, जिससे सीधे पढ़ना बहुत मुश्किल हो जाता है। फ़ॉर्मेट करने के बाद, आप स्पष्ट रूप से ऑब्जेक्ट नेस्टिंग, ऐरे एलिमेंट और प्रत्येक फ़ील्ड का मान देख सकते हैं।
फ़ॉर्मेटिंग के विपरीत ऑपरेशन JSON मिनिफिकेशन है, जो सभी गैर-आवश्यक व्हाइटस्पेस कैरेक्टरों को हटा देता है, ट्रांसमिशन आकार को कम करने के लिए JSON को सबसे कॉम्पैक्ट सिंगल-लाइन रूप में वापस बदल देता है। फ़ॉर्मेटिंग और मिनिफिकेशन प्रतिवर्ती संचालन की एक जोड़ी है; दोनों JSON सिमेंटिक्स को नहीं बदलते हैं, केवल पठनीयता और आकार को प्रभावित करते हैं।
JSON वैलिडेशन जांचता है कि पाठ का एक टुकड़ा JSON सिंटैक्स नियमों के अनुरूप है या नहीं। सामान्य अमान्य पैटर्न में शामिल हैं: डबल कोट्स के बजाय सिंगल कोट्स का उपयोग करना, बिना उद्धरण चिह्नों के कुंजियां, अंतिम एलिमेंट के बाद ट्रेलिंग अल्पविराम, // या /* */ टिप्पणियां होना, और ब्रैकेट या उद्धरण चिह्नों को गलत तरीके से बंद होना। इनमें से कोई भी वैध JSON नहीं है, और फ़ॉर्मेटिंग त्रुटियों की रिपोर्ट करेगी — इस मामले में, आपको पहले JSON मरम्मत टूल का उपयोग करना चाहिए, फिर फ़ॉर्मेट करें।
फ़ॉर्मेटिंग के आधार पर, यह टूल ट्री व्यू, माइंड मैप व्यू और 13 प्रोग्रामिंग भाषाओं में कोड रूपांतरण क्षमताएं भी प्रदान करता है: आप गहरी संरचनाओं को ब्राउज़ करने के लिए JSON को विज़ुअल पदानुक्रमित ट्री में फोल्ड कर सकते हैं, या API प्रतिक्रिया JSON को TypeScript इंटरफेस, Java क्लास, Python शब्दकोश, या डेटाबेस टेबल निर्माण स्टेटमेंट में एक-क्लिक से बदल सकते हैं जो विकास में सीधे उपयोग के लिए हैं। सभी प्रसंस्करण ब्राउज़र में स्थानीय रूप से किया जाता है; डेटा कभी भी सर्वर पर अपलोड नहीं किया जाता है।