JSON की संरचनात्मक तुलना
दो JSON संरचनाओं की तुलना करें और स्पष्ट पथों पर जोड़े, हटाए या बदले गए मान देखें। संख्याओं का लिखा हुआ रूप बिना राउंड किए सुरक्षित रहता है।
यह पृष्ठ वर्तमान दायरे में इस भाषा के उपलब्ध टूल दिखाता है। इसका अर्थ यह नहीं कि साइट के सभी टूल हर भाषा में अनूदित हैं।
इस्तेमाल का तरीका
पहले और बाद के JSON पाठ पेस्ट करें, फिर तुलना करें। प्रत्येक बदलाव का प्रकार, पथ और पहले/बाद का JSON पाठ देखें; ज़रूरत पर पूर्वावलोकन के पृष्ठ बदलें। अपनी इच्छा से पूरी रिपोर्ट कॉपी करें या json-diff.json के नाम से डाउनलोड करें। किसी इनपुट को संपादित करने से पिछला परिणाम अमान्य हो जाता है; रिपोर्ट किसी भी इनपुट की जगह नहीं लेती।
पहले: {"n":1,"a":[1,2]}; बाद में: {"a":[2,1],"n":1.0}। तीन बदलाव हैं: /n में पाठ 1 से पाठ 1.0, /a/0 में 1 से 2 और /a/1 में 2 से 1। केवल ऑब्जेक्ट की दो कुंजियों का क्रम बदलने से कोई बदलाव नहीं जुड़ता। कुंजी a/b~c पथ /a~1b~0c पर दिखाई देती है।
समर्थन और सीमाएँ
ऑब्जेक्ट की कुंजियों का क्रम अनदेखा किया जाता है, लेकिन ऐरे की तुलना इंडेक्स के अनुसार होती है; तत्वों के स्थान बदलने या सेट के मिलान का अनुमान नहीं लगाया जाता। संख्याओं की तुलना उनके मूल लिखे हुए रूप से होती है: 1, 1.0 और 1e0 अलग हैं और उन्हें कभी Number में नहीं बदला जाता। तुलना के लिए JSON स्ट्रिंग डिकोड की जाती हैं, लेकिन Unicode सामान्यीकरण नहीं किया जाता। किसी शाखा को जोड़ने, हटाने या उसका प्रकार बदलने पर पूरी शाखा वाली एक पंक्ति बनती है। खाली पथ रूट को दर्शाता है; JSON Pointer में ~ को ~0 और / को ~1 से एस्केप किया जाता है। रिपोर्ट के before और after फ़ील्ड कॉम्पैक्ट JSON वाली स्ट्रिंग हैं, राउंड किए गए संख्यात्मक मान नहीं। उस ओर का मान अनुपस्थित होने पर फ़ील्ड नहीं दिया जाता, जबकि JSON null को "null" स्ट्रिंग से दर्शाया जाता है। रिपोर्ट अंतरों का वर्णन करती है; बदलाव लागू करने के लिए यह JSON Patch नहीं है। प्रसंस्करण ब्राउज़र में ही होता है; JSON सामग्री चलाई या अपलोड नहीं की जाती और उसे अपने-आप सहेजा या कॉपी नहीं किया जाता।
अक्सर पूछे जाने वाले सवाल
क्या बराबर परिणाम का अर्थ है कि दोनों पाठ बाइट-दर-बाइट समान हैं?
नहीं। स्ट्रिंग के बाहर का खाली स्थान, ऑब्जेक्ट की कुंजियों का क्रम और वर्णों के एस्केप का लिखा हुआ रूप अलग हो सकते हैं, फिर भी इन नियमों के अनुसार मान बराबर रह सकते हैं। तब changes सूची खाली होती है और रिपोर्ट को फिर भी कॉपी या डाउनलोड किया जा सकता है। इसके विपरीत, किसी संख्या का लिखा हुआ रूप या ऐरे के तत्वों का क्रम अलग हो तो उसे अंतर माना जाता है, भले ही अर्थ मिलता-जुलता लगे।
संबंधित टूल
JSON फ़ॉर्मैटर और वैलिडेटर
बड़ी संख्याओं को ज्यों का त्यों रखते हुए JSON का स्वरूप बदलें, अनावश्यक रिक्त स्थान हटाएँ और जाँचें। दोहराई गई कुंजियाँ अस्वीकार की जाती हैं।
पाठ में अंतर जाँचें
मूल और बदले हुए पाठ की पंक्ति-दर-पंक्ति तुलना करें। सीमित संसाधनों वाले स्थानीय वर्कर में जोड़ी और हटाई गई पंक्तियाँ देखें।
CSV और JSON रूपांतरण
सेल को स्ट्रिंग रखते हुए और शीर्षक व उद्धरण चिह्न जाँचते हुए CSV तालिका और JSON स्थानीय रूप से रूपांतरित करें।