Generics Introduction
index.ts
/*
Generics
- Help Write A Reusable Code
- Allow To Pass Type As A Parameter To Another Type
- You Will Be Able To Deal With Multiple Types Without Using ": Any Type"
- We Can Create:
--- Generic Classes
--- Generic Functions
--- Generic Methods
--- Generic Interfaces
*/
function returnNumber(val: number) : number {
return val;
}
function returnString(val: string) : string {
return val;
}
function returnBoolean(val: boolean) : boolean {
return val;
}
console.log(returnNumber(100));
console.log(returnString("Elzero"));
console.log(returnBoolean(true));
function returnType<T>(val: T) : T {
return val;
}
console.log(returnType<number>(100));
console.log(returnType<string>("Elzero"));
console.log(returnType<boolean>(true));
console.log(returnType<number[]>([1, 2, 3, 4]));