JSON और स्कीमा

JSON टिप्पणियाँ: क्या JSON में टिप्पणियाँ स्वीकार्य हैं?

सख्त JSON में टिप्पणी का सिंटैक्स नहीं है। // या /* ... */ स्वीकार करने वाला पार्सर अलग शैली प्रोसेस कर रहा है या गैर-मानक विस्तार लगा रहा है।

प्रकाशित

संक्षिप्त उत्तर: सख्त JSON में टिप्पणियाँ नहीं हैं

// टोकन JSON व्याकरण का हिस्सा नहीं है और सख्त पार्सिंग में त्रुटि देता है।

{
  // API timeout
  "timeout": 5000
}

JSON.parse और सख्त टूल टिप्पणियाँ क्यों अस्वीकार करते हैं

सख्त व्याकरण अलग पार्सरों में आदान-प्रदान का व्यवहार अनुमानित रखता है। उदार संपादक यह प्रमाण नहीं है कि API या मानक JSON पार्सर वही फ़ाइल स्वीकार करेगा।

_comment प्रॉपर्टी का विकल्प

यह मान्य JSON है, लेकिन _comment वास्तविक डेटा है। यह स्कीमा, हस्ताक्षर, स्टोरेज और उपभोक्ताओं पर असर डाल सकता है।

{ "_comment": "API timeout in ms", "timeout": 5000 }

JSONC और JSON5

JSONC और JSON5 अतिरिक्त सिंटैक्स वाले अलग प्रारूप हैं। उन्हें सख्त JSON कहने के बजाय सही एक्सटेंशन, पार्सर और कॉन्ट्रैक्ट उपयोग करें।

JSON Schema में $comment

$comment स्कीमा दस्तावेज़ के भीतर JSON Schema कीवर्ड है। यह किसी भी JSON डेटा के लिए सामान्य टिप्पणी सिंटैक्स नहीं है।

कुछ संपादक कॉन्फ़िगरेशन फ़ाइलें टिप्पणी वाले JSON जैसी क्यों दिखती हैं

संबंधित ऐप फ़ाइल को JSONC के रूप में परिभाषित कर सकता है या उदार पार्सर उपयोग कर सकता है। यह समर्थन अपने-आप दूसरे टूल में नहीं मिलता।

मिनिफ़ायर को टिप्पणियाँ चुपचाप क्यों नहीं हटानी चाहिए

गैर-मानक सिंटैक्स हटाना अर्थ-संबंधी जोखिम वाला प्रारूप कन्वर्ज़न है, सामान्य व्हाइटस्पेस मिनिफ़िकेशन नहीं। सख्त मिनिफ़ायर को अमान्य इनपुट बताना चाहिए।

आम गलतियाँ

  • मानना कि संपादक की हाइलाइटिंग सख्त वैधता सिद्ध करती है।
  • सख्त API को टिप्पणी वाला JSON भेजना।
  • अतिरिक्त फ़ील्ड निषिद्ध हों तब _comment प्रॉपर्टी उपयोग करना।
  • पार्सर दर्ज किए बिना JSONC आउटपुट को JSON कहना।

JSON Minifier में टिप्पणी वाला JSON आज़माएँ

पहले से लिखे त्रुटि शब्दों पर निर्भर रहने के बजाय वास्तविक पार्सर परिणाम देखने के लिए अमान्य और मान्य उदाहरण चलाएँ।

उदाहरण आज़माएँ

सख्त JSON टिप्पणी त्रुटि देखें

// टिप्पणी इस दस्तावेज़ को सख्त पार्सर के लिए अमान्य बनाती है।

{
  // API timeout
  "timeout": 5000
}

अपेक्षित परिणाम: मिनिफ़ायर वास्तविक पार्सर त्रुटि बताता है और टिप्पणी चुपचाप नहीं हटाता।

उदाहरण आज़माएँ

वास्तविक डेटा प्रॉपर्टी सोचकर उपयोग करें

_comment सदस्य मान्य JSON डेटा है, टिप्पणी सिंटैक्स नहीं।

{
  "_comment": "API timeout in ms",
  "timeout": 5000
}

अपेक्षित परिणाम: JSON मान्य है और मिनिफ़ाइड आउटपुट में _comment रहता है।

पार्सर की सीमा देखें

सख्त JSON जाँचें

टिप्पणी वाले दस्तावेज़ की तुलना मान्य डेटा-प्रॉपर्टी विकल्प से करें।

JSON Minifier में खोलें →