반응형
Generics, Any 차이
타입을 변수로 활용해서 return 되는 타입과 연관시키면 좋다는 아이디어에서 generic의 개념이 나타났다
function helloString(message: string): string {
return message;
}
function helloNumber(message: number): number {
return message;
}
function hello(message: string | number) : string|number {
return message;
}
function helloAny(message: any): any {
return message;
}
console.log(helloAny(123));
console.log(helloAny('onetwothree'));
console.log(helloAny(true));
function helloGeneric<T>(message: T): T {
return message;
}
console.log(helloGeneric('1234').length);
console.log(helloGeneric(1234));
console.log(helloGeneric(true));
이렇게 T 라는 것을 변수처럼 사용 가능하다
Generic의 장점
Generic은 Any보다 타입 안정성을 보장할 수 있습니다. Generic을 사용하면 컴파일러가 타입 체크를 할 수 있으며, 잘못된 타입 사용시 컴파일 에러를 발생시켜줍니다. 반면에 Any는 어떤 타입이든 받을 수 있기 때문에 컴파일러가 타입 체크를 하지 않습니다. 이로 인해 런타임 에러가 발생할 수 있습니다.
반응형
'Javascript' 카테고리의 다른 글
[Javascript] concat(), slice(), splice() 함수 (0) | 2023.05.31 |
---|---|
[Javascript] find() 및 findIndex() 함수 (0) | 2023.05.31 |
[TS] TypeScript를 사용하는 이유 (2) | 2023.03.04 |
[JS] null과 undefined 차이 (0) | 2023.03.04 |
[JS] 정규표현식 간단한 정리 (0) | 2023.03.03 |