최소 구조 요구
T가 특정 속성이나 메서드를 가진 값이어야 할 때 구조 제약을 둡니다.
T extends Lengthwise
extends, keyof, class 타입, typeof를 활용하면 제네릭의 재사용성은 유지하면서 함수가 실제로 쓰는 능력만 요구할 수 있습니다.
T가 특정 속성이나 메서드를 가진 값이어야 할 때 구조 제약을 둡니다.
T extends Lengthwise
객체와 키를 함께 받을 때 실제 키만 허용하도록 연결합니다.
K extends keyof T
new로 만들 수 있는 타입을 받아 인스턴스 생성 패턴을 안전하게 표현합니다.
new () => T
제약을 걸어도 호출 시점의 구체 타입 정보는 가능한 한 유지합니다.
T