타입스크립트 제네릭 함수 예제
타입스크립트( Typescript )의 제네릭( Generic ) 함수는 함수( Method )가 사용할 타입을 미리 하나로 고정하지 않고 타입 매개변수를 이용하여 여러 타입에서 재사용할 수 있도록 만든 함수이다.
제네릭 함수는 <T>와 같은 타입 매개변수를 사용한다.
함수 호출 시 타입을 직접 지정할 수도 있으며, 함수 인수를 통해 타입스크립트가 타입 인수를 추론할 수도 있다.
제네릭 함수 <T>를 이용하면 any를 사용하는 것보다 입력값과 반환값 사이의 타입 정보를 더 정확하게 사용할 수 있다.
⊙
function identity<T>(value: T): T {
return value;
}
const numberValue = identity<number>(100);
const stringValue = identity<string>("Hello");
console.log(numberValue);
console.log(stringValue);⊙
function getFirst<T>(items: T[]): T | undefined {
return items[0];
}
const numberResult = getFirst([10, 20, 30]);
const stringResult = getFirst(["Apple", "Banana", "Orange"]);
console.log(numberResult);
console.log(stringResult);⊙
function createPair<T, U>(first: T, second: U): [T, U] {
return [first, second];
}
const pair1 = createPair<string, number>("Age", 20);
const pair2 = createPair<boolean, string>(true, "Success");
console.log(pair1);
console.log(pair2);⊙
function getLength<T>(value: T): number {
return value.length;
}⊙
function getLength<T extends { length: number }>(value: T): number {
return value.length;
}
const textLength = getLength("Hello");
const arrayLength = getLength([10, 20, 30]);
console.log(textLength);
console.log(arrayLength);⊙
function 함수이름<T>(매개변수: T): T {
return 매개변수;
}
function identity<T>(value: T): T {
return value;
}
댓글
댓글 쓰기