टाइपस्क्रिप्ट में जेनरिक टाइप फ़ंक्शन

पिछले पाठों में, हमने एक आइडेंटिटी फ़ंक्शन बनाया था, जिसने जेनरिक टाइप के पैरामीटर लिए थे। अब हम ऐसे फ़ंक्शन के टाइप को डिस्क्राइब करना और जेनरिक इंटरफेस बनाना सीखेंगे।

जेनरिक टाइप फ़ंक्शन को एरो फ़ंक्शन के रूप में भी लिखा जा सकता है। आइए एक वेरिएबल func डिक्लेयर करें, जिसका टाइप जेनरिक फ़ंक्शन का होगा:

typescriptfunction myFunc <T> (data: T): T {
  return data;
}

let func: <T> (data: T) => T = myFunc;

ऐसे वेरिएबल के जेनरिक टाइप के लिए एक अलग सिंबल भी सेट किया जा सकता है। मुख्य बात यह है कि टाइप के नाम एक दूसरे से कॉन्फ्लिक्ट न करें:

typescriptfunction myFunc <T> (data: T): T {
  return data;
}

let func: <U> (data: U) => U = myFunc;

कॉल सिग्नेचर और फ़ंक्शन के टाइप को कर्ली ब्रेसिज़ में बंद करके जेनरिक टाइप को लिखा जा सकता है:

typescriptfunction myFunc < T > (data: T): T {
  return data;
}

let func: {<U> (data: U): U} = myFunc;
Задание 1

इस पाठ में बताए गए वेरिएंट्स में, जेनरिक टाइप की ऐरे की लंबाई निर्धारित करने के लिए एक फ़ंक्शन लिखें।