JSON से TypeScript - इंटरफेस और टाइप जनरेट ऑनलाइन
JSON पेस्ट करें और तुरंत TypeScript इंटरफेस, टाइप और enum जनरेट करें। API रिस्पॉन्स को टाइप-सेफ कोड में बदलें — 100% ब्राउज़र में।
अक्सर पूछे जाने वाले प्रश्न
JSON to TypeScript कनवर्टर क्या है?
JSON to TypeScript कनवर्टर एक उपकरण है जो JSON डेटा से स्वचालित रूप से TypeScript इंटरफेस या टाइप एलियास उत्पन्न करता है। अपने API रिस्पॉन्स या कॉन्फिगरेशन फाइलों के लिए मैन्युअल रूप से टाइप डेफिनिशन लिखने के बजाय, आप एक सैंपल JSON ऑब्जेक्ट पेस्ट करते हैं और टूल हर फील्ड के लिए सही TypeScript टाइप्स का अनुमान लगाता है।
JSON से TypeScript इंटरफेस कैसे जनरेट करें?
बाईं ओर के इनपुट फील्ड में अपना JSON डेटा पेस्ट करें। टूल तुरंत दाईं ओर के आउटपुट पैनल में TypeScript इंटरफेस जनरेट करेगा। आप रूट इंटरफेस नाम सेट करके, 'interface' और 'type' सिंटैक्स के बीच चुनकर, और अन्य फॉर्मेटिंग विकल्पों को समायोजित करके आउटपुट को कस्टमाइज़ कर सकते हैं।
TypeScript interface या type alias में से क्या उपयोग करना चाहिए?
दोनों ऑब्जेक्ट शेप्स को परिभाषित करने के लिए काम करते हैं, लेकिन उनमें अंतर हैं। इंटरफेस आमतौर पर ऑब्जेक्ट डेफिनिशन के लिए पसंद किए जाते हैं क्योंकि उन्हें 'extends' से बढ़ाया जा सकता है। टाइप एलियास अधिक बहुमुखी हैं और यूनियन, इंटरसेक्शन और प्रिमिटिव टाइप्स का प्रतिनिधित्व कर सकते हैं।
कनवर्टर नेस्टेड JSON ऑब्जेक्ट्स को कैसे हैंडल करता है?
जब टूल को नेस्टेड ऑब्जेक्ट मिलता है, तो यह उसके लिए एक अलग नामित इंटरफेस बनाता है। उदाहरण के लिए, अगर आपके JSON में 'address' सब-ऑब्जेक्ट वाला 'user' ऑब्जेक्ट है, तो टूल 'User' और 'Address' दोनों इंटरफेस जनरेट करता है।
क्या इस टूल का उपयोग करते समय मेरा JSON डेटा सुरक्षित है?
हां, पूरी तरह से। यह टूल क्लाइंट-साइड JavaScript का उपयोग करके आपके ब्राउज़र में सब कुछ प्रोसेस करता है। आपका JSON डेटा कभी भी आपके कंप्यूटर से बाहर नहीं जाता - कोई सर्वर अपलोड नहीं, कोई API कॉल नहीं, और कोई डेटा स्टोरेज नहीं।
टूल JSON में null वैल्यू को कैसे हैंडल करता है?
जब JSON फील्ड में null वैल्यू होती है, तो टूल null के साथ यूनियन टाइप जनरेट करता है, जैसे 'field?: string | null'। प्रॉपर्टी को '?' मॉडिफायर के साथ ऑप्शनल मार्क किया जाता है।
मिक्स्ड टाइप्स वाले एरे का क्या होता है?
अगर JSON एरे में अलग-अलग टाइप के एलिमेंट्स हैं, तो टूल '(string | number)[]' जैसा यूनियन एरे टाइप जनरेट करता है। खाली एरे को 'unknown[]' के रूप में टाइप किया जाता है।
कोड उदाहरण
// JSON to TypeScript interface generator
function jsonToTypeScript(json, rootName = 'Root') {
const interfaces = [];
function inferType(value, name) {
if (value === null) return 'null';
if (Array.isArray(value)) {
if (value.length === 0) return 'unknown[]';
const types = [...new Set(value.map((item) => inferType(item, name + 'Item')))];
const typeStr = types.length > 1 ? `(${types.join(' | ')})` : types[0];
return `${typeStr}[]`;
}
if (typeof value === 'object') {
const interfaceName = toPascalCase(name);
const properties = Object.entries(value).map(([key, val]) => {
const type = inferType(val, key);
const optional = val === null ? '?' : '';
return ` ${key}${optional}: ${type};`;
});
interfaces.push(`interface ${interfaceName} {\n${properties.join('\n')}\n}`);
return interfaceName;
}
return typeof value;
}
function toPascalCase(str) {
return str.replace(/(^|[-_ ])(\w)/g, (_, __, c) => c.toUpperCase());
}
const parsed = JSON.parse(json);
inferType(parsed, rootName);
return interfaces.reverse().join('\n\n');
}
const json = '{"name": "Alice", "age": 30, "address": {"city": "NYC"}}';
console.log(jsonToTypeScript(json));