Generic constraint(T extends ...)는 generic 매개변수가 될 수 있는 타입을 제한하여, 그것에 대해 특정 프로퍼티나 메서드를 안전하게 사용할 수 있게 합니다. 제약이 없으면 generic은 무엇이든 될 수 있으므로 어떤 멤버를 가졌다고 가정할 수 없습니다.
ts
longestBad<T>(: T, : T) {
a. > b. ? a : b;
}
longest<T { : }>(: T, : T): T {
a. > b. ? a : b;
}
(, );
([, ], []);
(, );
