728x90
반응형
- 이넘 (enum)
열거형을 정의하는 것으로 열거형은 관련된 상수 집합을 그룹화하여 가독성 및 유지보수성을 높일 수 있다.
- 숫자 열거형 (Numeric Enum)
- 자동으로 숫자 값이 할당되며, 0부터 시작
- 문자열 열거형 (String Enum)
- 명시적인 문자열 값을 통해 명확한 값을 가지며 예측 가능
- 상수 열거형 (Const Enum)
- 컴파일 할 때 상수로 대체되며, 런타임에는 존재하지 않음
- 성능 최적화 시 유용
- 홉합 열거형 (Heterogeneous Enum)
- 숫자와 문자열을 혼합하여 사용 (단, 혼란을 초래할 수 있으므로 주의 필요)
// 숫자 열거형 (Numeric Enum)
enum Num {
Up = 1, // 첫 번째 멤버에 1을 부여하여 각 멤버는 0이 아닌 1부터 시작하는 숫자 값을 가지게 된다.
Down,
Left,
Right
}
console.log(Num.Down); // 2 멤버의 숫자값을 받아온다.
console.log(Num[1]); // Up 숫자로 이름을 얻을 수도 있다.
// 문자열 열거형 (String Enum)
enum Str {
Seoul = "SEOUL",
Busan = "BUSAN",
}
console.log(Str.Seoul);
// 상수 열거형 (Const Enum)
const enum Status {
Success = 1,
Failed,
}
console.log(Status.Success);
// 홉합 열거형 (Heterogeneous Enum)
enum Mixed {
Success = "SUCCESS",
Error = 404,
}
console.log(Mixed.Success);
console.log(Mixed.Error);
- 제네릭 (Generic)
타입을 미리 지정하지 않고 사용하는 시점에 정의해서 사용하는 문법이다.
// T 대신 직접 지정한 이름도 가능하다.
function func<T>(value: T): T {
return value;
};
console.log(func(10)); // 10
const arrFunc = <T>(el: T[]): T => el[0];
console.log(arrFunc([1, 2, 3]));
// 인터페이스에서도 가능
interface Inter<T> {
value: T;
getValue(): T;
}
const numBox: Inter<number> = {
value: 1,
getValue() { return this.value; }
};
※ 참고 : 수코딩 (https://www.sucoding.kr)
728x90
반응형
'Typescript' 카테고리의 다른 글
설치, 컴파일, 변수 선언 방법 (0) | 2024.08.20 |
---|