Avatar ·

TypeScript में `keyof` के लिए `valueof` का एनालॉग: ऑब्जेक्ट के वैल्यू टाइप कैसे प्राप्त करें?

सभी को नमस्कार! मैंने हाल ही में TypeScript सीखना शुरू किया है और एक दिलचस्प समस्या का सामना किया। हम सभी `keyof` के बारे में जानते हैं — जब ऑब्जेक्ट की कुंजियों का यूनियन प्राप्त करना हो तो यह बढ़िया काम करता है। उदाहरण के लिए: ```typescript interface User { name: string; age: number; email: string; } type UserKeys = keyof User; // "name" | "age" | "email" ``` लेकिन मुझे इसका उल्टा चाहिए — ऑब्जेक्ट के *वैल्यू टाइप* का यूनियन प्राप्त करना। यानी `User` इंटरफ़ेस के लिए मैं `string | number` टाइप प्राप्त करना चाहता हूँ, न कि `"name" | "age" | "email"`। मैंने `valueof` जैसा कुछ लिखने की कोशिश की, लेकिन TypeScript एरर देता है। गूगल किया — Stack Overflow पर ऐसा ही सवाल मिला, लेकिन जवाब अंग्रेज़ी में थे और मैं पूरी तरह समझ नहीं पाया। विशिष्ट समस्या: मेरे पास अलग-अलग टाइप के फ़ील्ड (स्ट्रिंग, नंबर, बूलियन वैल्यू) वाला एक कॉन्फ़िगरेशन ऑब्जेक्ट है। मुझे एक ऐसा फ़ंक्शन लिखना है जो इस ऑब्जेक्ट से कोई भी key ले और सही टाइप का वैल्यू लौटाए। `valueof` के बिना हर जगह `any` का उपयोग करना पड़ता है, जो टाइप सेफ्टी को खत्म कर देता है।

अभी तक कोई उत्तर नहीं।

लॉग इन करें उत्तर देने के लिए

ब्लॉग