Concrete Type / Generic Type 두가지가 있다.
generic은 각각의 모든 타입을 명시적으로 적어줄 필요 없이 타입을 입력받을 수 있게 된다.
type GenericType = <T>(arr: T[]) => T
const printFirst:GenericType = (arr) => arr[0]
//다른방식으로 제네릭 사용하기
function printFirst<T>(arr:T[]){
return arr[0]
}
const test = printFirst([a,s,d,f]);
- 파라미터가 두개 이상일때는
type GenericMultiple = <T, M>(a:T, b:M) => void