TypeScript में टाइप वेरिएबल्स
जेनेरिक्स की अवधारणा को बेहतर ढंग से समझने के लिए आइए हम अपना पहला फंक्शन बनाएं - आइडेंटिटी फंक्शन। ऐसा फंक्शन वही लौटाता है जो उसे पास किया गया था - उसी टाइप के साथ।
आइए सबसे पहले हम अपने फंक्शन के वेरिएंट्स अलग-अलग लिखें।
एक ऐसा फंक्शन लिखें जो पैरामीटर के रूप में एक नंबर लेता है और नंबर लौटाता है:
function func(data: number): number {
return data;
}
अब एक ऐसा फंक्शन लिखें जो पैरामीटर के रूप में एक स्ट्रिंग लेता है और स्ट्रिंग लौटाता है:
function func(data: string): string {
return data;
}
अब मान लीजिए कि हम चाहते हैं कि यह सब एक ही फंक्शन करे। यानी हम जनरलाइजेशन करना चाहते हैं।
इसके लिए हम टाइप वेरिएबल का उपयोग करते हैं,
जो डेटा के टाइप को अपने अंदर सेव कर लेती है। ऐसा वेरिएबल
फंक्शन के पैरामीटर्स वाले राउंड ब्रैकेट्स से पहले
एंगल ब्रैकेट्स में डिक्लेयर किया जाता है। आइए ऐसा
वेरिएबल डिक्लेयर करें, उसे T नाम देकर
(कोई भी नाम दे सकते हैं):
function func <T>(यहाँ पैरामीटर्स) {
return data;
}
इसके बाद हमारे पास T वेरिएबल होगी,
जिसका उपयोग हम पैरामीटर का टाइप इसमें डालने के लिए कर सकेंगे,
और फिर उसे रिटर्न टाइप के रूप में निर्दिष्ट कर सकेंगे।
आइए अपने पैरामीटर का टाइप अपने वेरिएबल के रूप में निर्दिष्ट करें:
function func <T>(data: T) {
return data;
}
ऐसा होगा कि पैरामीटर किसी भी टाइप में पास किया जा सकता है,
और वह टाइप हमारे T वेरिएबल में सेव हो जाएगा।
अब T वेरिएबल के वैल्यू का उपयोग फंक्शन के
रिजल्ट के रूप में करें:
function func <T>(data: T): T {
return data;
}
अब ऐसा होगा कि फंक्शन का रिजल्ट टाइप पैरामीटर के टाइप से प्राप्त होगा। आइए चेक करें।
फंक्शन को एक नंबर के साथ कॉल करें:
console.log( func(3) ); // 3 प्रिंट करेगा
फंक्शन को एक स्ट्रिंग के साथ कॉल करें:
console.log( func('x') ); // 'x' प्रिंट करेगा
एक ऐसा फंक्शन बनाएं जो पैरामीटर के रूप में या तो दो नंबर, या दो स्ट्रिंग्स लेता हो। फंक्शन को अपने रिजल्ट के रूप में पैरामीटर्स का योग लौटाना चाहिए।