최소 구조 요구
length나 id처럼 내부에서 사용할 속성이 있다면 그 구조를 만족하는 타입으로 제한합니다.
T extends
모든 타입을 허용하면 내부에서 할 수 있는 일이 줄어들기 때문에 extends로 최소한의 구조나 관계를 요구합니다.
length나 id처럼 내부에서 사용할 속성이 있다면 그 구조를 만족하는 타입으로 제한합니다.
T extends
두 타입 변수 사이의 포함 관계를 만들어 키와 객체처럼 연결된 값을 안전하게 다룹니다.
K extends keyof T
인스턴스를 만들거나 클래스 타입을 받아야 할 때 생성자 시그니처를 제약으로 둡니다.
new () => T
제약을 너무 넓거나 좁게 잡지 않으면 호출 시점의 구체 타입 정보가 잘 보존됩니다.
inference