일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- for of
- frontend
- typeof
- 논리연산자
- if else
- 프론트엔드
- 반복문
- flex-direction
- 함수
- flex
- 타입
- 조건문
- 비교연산자
- 변수
- align-content
- 함수표현식
- 문자열
- for
- 화살표함수
- 함수선언식
- 기초
- 속성
- ELSE
- for in
- properties
- justify-content
- flex-wrap
- javascript
- Methods
- boolean
- Today
- Total
하얀 코딩
[TypeScript - 5] Object types (객체 타입) - enum, tuple 본문
enum
타입스크립트의 enum은 특정 값들의 집합을 표현하는 데 사용되는 특별한 타입입니다.
enum은 상수 값을 읽기 쉬운 이름으로 대체하여 코드를 더욱 명확하고 읽기 쉽게 만드는 데 도움이 됩니다.
enum Color {
Red, // Red === 0
Green, // Green === 1
Blue // Blue === 2
}
let c: Color = Color.Green;
enum에서 값을 지정하지 않으면, 첫 번째 값은 0으로 시작하고, 그 다음부터는 자동으로 1씩 증가합니다.
기본적으로 enum의 첫 번째 멤버는 0부터 시작하여 숫자 값을 가지지만, 이는 변경할 수 있습니다.
enum의 멤버에 명시적으로 값을 할당할 수도 있습니다.
enum Color {
Red = 4, // Red === 4
Green, // Green === 5
Blue // Blue === 6
}
enum Color {
Red = 4, // Red === 4
Green = 7, // Green === 7
Blue // Blue === 8
}
또한 enum은 문자열 값도 가질 수 있습니다.
enum Color1 {
Red = 'RED',
Green = 'GREEN',
Blue = 'BLUE'
}
enum Color2 {
Red = 'RED',
Green = 'GREEN',
Blue = 'BLUE',
White, // Error!
}
enum Color3 {
Red = 'RED',
Green = 'GREEN',
Blue = 2,
White, // OK! White === 3
}
문자열 enum에서는 각 멤버의 값을 반드시 지정해야 합니다.
문자열과 숫자를 섞어서 쓸 경우에는 Color3과 같은 경우를 따라야 합니다.
Color2와 Color3 enum을 꼭 참고하세요.
타입스크립트의 enum에서 숫자와 문자열을 혼용하는 것은 가능하지만, 일반적으로 권장되지 않습니다.
이렇게 enum은 숫자나 문자열 값의 집합에 읽기 쉬운 이름을 제공하여 코드의 가독성을 높이는 데 유용합니다.
다음은 enum의 사용법 입니다.
enum Direction {
Up,
Down,
Left,
Right
}
let dir: Direction = Direction.Up;
if (dir === Direction.Up) { // 값 비교하기
console.log('You are going up!');
}
//enum의 값으로부터 이름을 얻는 것이 가능
console.log(Direction[Direction.Up]); // "Up"
console.log(Direction[1]); // "Down"
console.log(Direction.Left); // 2
tuple
타입스크립트에서 튜플(Tuple)은 미리 정의된 수의 요소와 그 요소의 타입을 가진 배열 타입입니다.
각 요소는 다른 타입을 가질 수 있습니다.
튜플은 구조화된 데이터를 표현하거나, 여러 값들을 묶어서 하나의 단위로 처리할 때 유용합니다.
let x: [string, number];
위 예제에서 x는 하나의 문자열 요소와 하나의 숫자 요소를 가진 튜플입니다.
튜플에 값을 할당하는 방법은 다음과 같습니다:
x = ["hello", 10]; // OK
x = [10, "hello"]; // Error
튜플의 각 요소에 접근하는 방법은 배열과 같습니다.
console.log(x[0]); // "hello"
console.log(x[1]); // 10
튜플의 인덱스를 벗어나는 요소에 접근하려고 하면 오류가 발생합니다.
console.log(x[2]); // Error
'TypeScript' 카테고리의 다른 글
[TypeScript - 7] Union( | ) / Intersection( & ) (0) | 2023.06.06 |
---|---|
[TypeScript - 6] Object types (객체 타입) - type, interface (0) | 2023.06.06 |
[TypeScript - 4] Object types (객체 타입) - object, array, function (0) | 2023.06.06 |
[TypeScript - 3] Primitive types (원시 타입) (0) | 2023.06.06 |
[TypeScript - 2] 사용법 및 설치 (0) | 2023.06.06 |