TypeScript Generics : T, K, V


TypeScript एक powerful superset है JavaScript का, जो type safety और modern programming features provide करता है।

इस topic में हम TypeScript के generics पर focus करेंगे, ख़ास तौर पर T, K, और V type parameters के बारे में।

What are Generics ?

Generics एक ऐसा feature है जो आपको type parameters को define करने कि flexibility देती है। इससे आप code को reuse कर सकते हैं बिना किसी specific type को hard code किये।

यह आपको एक generic structure create करने कि सुविधा देती है जो multiple data types के साथ काम कर सकता है।

TypeScript Generics Syntax

function example<T>(arg: T): T { return arg; }

What is T, K, V In Generic ?

T : यहां T का मतलब होता है "Type". यह generic type parameter को denote करता है। इसका use तब होता है जब आपको एक type specify करना हो लेकिन वो type आपको नहीं पता होता।

function identity<T>(arg: T): T { return arg; }

इस example में, identity function किसी भी type का argument ले सकता है और उससे return कर सकता है।

K का मतलब होता है "Key". यह अक्सर objects के keys के साथ use होता है। जब आपको object कि keys कि type specify करनी हो, तब आप K का use कर सकते हैं।

function getValue<T, K extends keyof T>(obj: T, key: K): T[K] { return obj[key]; }

इस function में, getValue एक object और उसकी key को लेता है और object से corresponding value को return करता है।

V का मतलब होता है "Value". यह generic type parameter है जो value types को denote करता है। इसका use तब होता है जब आपको किसी type को represent करना हो जो value को hold करता है।

function createPair<K, V>(key: K, value: V): [K, V] { return [key, value]; }

इस example में, createPair function एक key-value pair create करता है जहाँ K key का type है और V value का type है।

Advantages Of Generics

  1. Code Reusability : Generics कि help से आप एक ही code को multiple types के साथ use कर सकते हैं. यह आपके code को ज़्यादा maintainable और reusable बनाता है।

  2. Type Safety : Generics के साथ आपको type safety मिलती है, जिस से runtime errors कि सम्भावना कम हो जाती है। TypeScript आपको compile time पर type checking provide करता है।

  3. Improved Readability : Generics का use आपके code कि readability को भी improve करता है, क्योंकि आप clearly specify कर सकते हैं कि function या class किस type के साथ काम कर रही है।

Example : Generics in Action

चलिए एक छोटा सा example देखते हैं जो T, K, और V तीनो का use करेगा।

interface User { id: number; name: string; } function getUserProperty<T, K extends keyof T>(user: T, key: K): T[K] { return user[key]; } const user: User = { id: 1, name: "John Doe" }; const userName = getUserProperty(user, 'name'); // 'John Doe' const userId = getUserProperty(user, 'id'); // 1

इस example में, हमने एक User interface बनाया है और getUserProperty() function का use किया है। हमने K को keyof T से restrict किया है, जिससे हम सिर्फ valid keys को ही pass कर सकते हैं।

Conclusion

TypeScript के generics, ख़ास तौर पर T, K, और V, आपके code को flexible, reusable और type-safe बनाते हैं। इस topic में हमने generics के basics से लेकर इनके use तक कि बातें की।

आप जब भी अपने projects में TypeScript का use करें, generics का ध्यान ज़रूर रखें।

Hey ! I'm Rahul founder of learnhindituts.com. Working in IT industry more than 4.5 years. I love to talk about programming as well as writing technical tutorials and blogs that can help to others .... keep learning :)

Get connected with me - LinkedIn Twitter Instagram Facebook