Generics let you write functions and classes that work with any type while maintaining type safety. They’re essential for reusable TypeScript code.
Basic Generic Function
function identity<T>(value: T): T {
return value;
}
const num = identity(42); // number
const str = identity("hello"); // stringGeneric Interfaces
interface ApiResponse<T> {
data: T;
status: number;
message: string;
}
const userResponse: ApiResponse<User> = {
data: { id: 1, name: "John" },
status: 200,
message: "Success"
};Constraints
interface HasId { id: number; }
function findById<T extends HasId>(items: T[], id: number): T | undefined {
return items.find(item => item.id === id);
}References
Discover more from C4: Container, Code, Cloud & Context
Subscribe to get the latest posts sent to your email.