JSON क्या है?
JSON (JavaScript Object Notation) संरचित डेटा का टेक्स्ट फ़ॉर्मेट है जो ऑब्जेक्ट, ऐरे, स्ट्रिंग, नंबर, बूलियन और null से बनता है। इसे RFC 8259 और ECMA-404 परिभाषित करते हैं; यह भाषा-स्वतंत्र है और वेब API का डिफ़ॉल्ट फ़ॉर्मेट है क्योंकि यह कॉम्पैक्ट, पढ़ने योग्य और पार्स करने में आसान है।
JSON सॉर्टर कैसे इस्तेमाल करें
- जिस JSON की कीज़ सामान्य क्रम में लानी हैं उसे पेस्ट करें।
- A → Z या Z → A और इंडेंटेशन स्टाइल चुनें।
- कैनोनिकल नतीजे को अपनी कॉन्फ़िग, फ़िक्स्चर या स्नैपशॉट में कॉपी करें।
JSON सॉर्टर की खूबियाँ
- ऑब्जेक्ट की कीज़ को रिकर्सिव रूप से आरोही या अवरोही क्रम में सॉर्ट करता है
- ऐरे का क्रम ज्यों का त्यों रखता है
- केस-असंवेदनशील वर्णक्रम, एक तय कोलेशन के साथ — ब्राउज़र की भाषा कोई भी हो
- आउटपुट के लिए इंडेंटेशन चुनें, मिनिफ़ाइड भी
- लाइव आउटपुट, कॉपी और डाउनलोड के साथ
JSON सॉर्टर का उदाहरण
फ़िक्स्चर को कैनोनिकल बनाना
इनपुट:
{"zeta":1,"alpha":{"y":true,"x":false}}आउटपुट:
{
"alpha": {
"x": false,
"y": true
},
"zeta": 1
}JSON सॉर्टर के बारे में अक्सर पूछे जाने वाले सवाल
क्या नेस्टेड ऑब्जेक्ट भी सॉर्ट होते हैं?
हाँ। कीज़ हर स्तर पर रिकर्सिव रूप से सॉर्ट होती हैं, ऐरे के भीतर मौजूद ऑब्जेक्ट सहित।
क्या सॉर्टिंग से ऐरे बदलते हैं?
नहीं। ऐरे का क्रम अर्थ रखता है, इसलिए आइटम अपनी जगह पर बने रहते हैं; सिर्फ़ ऑब्जेक्ट की कीज़ का क्रम बदलता है।
कीज़ सॉर्ट करने की ज़रूरत ही क्यों है?
सॉर्ट की गई कीज़ एक कैनोनिकल रूप देती हैं। एक जैसे कंटेंट वाले दो डॉक्यूमेंट बाइट-दर-बाइट एक जैसे हो जाते हैं, जो स्नैपशॉट टेस्ट, कैश की, कॉन्फ़िग फ़ाइलों और साफ़ git diff के लिए आदर्श है।
क्रम कैसे तय होता है?
कीज़ की तुलना वर्णक्रम में, केस-असंवेदनशील तरीके से और एक तय (अंग्रेज़ी) कोलेशन से होती है, न कि आपके ब्राउज़र की भाषा से — इसलिए डिवाइस की भाषा बदलने से क्रम नहीं बदलता और "Beta" "alpha" और "gamma" के बीच आता है। Z → A ठीक इसका उल्टा क्रम है। सिर्फ़ अंकों वाली कीज़ की तुलना टेक्स्ट की तरह होती है, इसलिए "10" "9" से पहले आती है।
संदर्भ
- RFC 8259: The JavaScript Object Notation (JSON) Data Interchange FormatJSON का व्याकरण: ऑब्जेक्ट, ऐरे, स्ट्रिंग, नंबर, तीन लिटरल और इंटरचेंज एन्कोडिंग के रूप में UTF-8।
- ECMA-404: The JSON Data Interchange SyntaxEcma मानक के रूप में JSON सिंटैक्स, RFC 8259 के अनुरूप।
- Introducing JSONJSON का मूल एक-पृष्ठ विवरण, सिंटैक्स डायग्राम के साथ।