generic fn

제네릭 함수 타입 보존

타입 매개변수를 사용하면 함수가 구체 타입을 미리 고정하지 않아도 호출 시점의 타입 정보를 잃지 않습니다.

타입 보존

입력과 결과 연결

T를 사용하면 인자로 들어온 구체 타입이 반환 타입에도 이어집니다.

identity<T>
복수 매개변수

관계 표현

T와 U처럼 여러 타입 변수를 두면 두 입력의 관계를 더 정확히 표현합니다.

<T, U>
extends 제약

필요 속성 보장

length나 id처럼 함수가 실제로 쓰는 속성만 제약으로 요구합니다.

T extends HasId
keyof 활용

키 안전성

객체의 실제 키만 선택하게 만들어 잘못된 속성 접근을 막습니다.

K extends keyof T