기본 타입의 종류
- String
- Number
- Boolean
- Object
- Array
- Tuple
- Enum
- Any
- Void
- Null
- Undefined
- Never
String
TypeScript에서는 텍스트 데이터 타입을 string으로 표현합니다. JavaScript처럼 TypeScript도 큰따옴표 (")나 작은따옴표 (')를 문자열 데이터를 감싸는데 사용합니다.
let str: string = 'TypeScript';
: <- 타입 표기(Type Annotation)
str = 123; // Error
str = true; // Error
str = undefined; // Error
let fullName: string = `NBC`;
let age: number = 10;
let sentence: string = `my name is ${fullName}. I'm ${age + 1} years old`;
Number
TypeScript는 js와 마찬가지로 10진수, 16진수 표현을 지원하고 ECMAscript 2015에서 소개된 2진수, 8진수 표현도 지원합니다.
let num: number = 123;
let decimal: number = 6;
let hex: number = 0xf00d;
let binary: number = 0b1010;
let octal: number = 0o744;
Boolean
참/거짓을 의미하는 boolean 입니다
let isTrue: boolean = true;
let isFalse: boolean = false;
Array
TypeScript는 어떤 변수가 배열임을 명시적으로 선언할 수 있습니다.
let arr: number[] = [1, 2, 3];
let array: Array<number> = [1, 2, 3];
let arr2: string[] = ['1', '2', '3'];
let arr3: boolean[] = [true, false, true];
Tuple
튜플 타입을 사용하면, 요소의 타입과 개수가 고정된 배열을 표현할 수 있습니다. 단, 요소들의 타입이 모두 같을 필요는 없습니다.
let x: [string, number];
x = ['hi', 1];
x = [1, 'hi']; // Error
console.log(x[0], x[1]);
console.log(x[2]); // Error
x[2] = 'world'; // Error
let tuple: [string, number, boolean] = ['str', 1, false];
- 배열은 순서도 포함하고있는 타입이므로 [string, number]이면 문자열 먼저, 그다음 숫자가 나와야 에러가 안뜬다.
Any : 자바스크립트의 변수는 다 any 다!
let str: any = 'hi';
let num: any = 10;
let arr: any = ['a', 2, true];
- any는 TypeScript에서는 '어떤 타입이든'이라는 의미로 해석할 수 있다.
Void : 함수에서 반환 값이 없는 경우
function c(): void {
console.log('c');
}
Null
Undefined
// 아래 코드를 제외하고 이 변수들에 할당할 수 있는 값이 없습니다!
let a: null = null;
let b: undefined = undefined;
let unionType: number | null = null;
Never : 비정상적 종료가 되거나 함수가 끝까지 실행되지 않을 때 (거의 사용 X)
function a(): never {
while (true) {
}
}
function b(): never {
throw new Error('Error');
}
Object (다른 강의에서 다룸)
Enum (다른 강의에서 다룸)
'내일배움캠프[4기_Reac트랙] > [원격]TS' 카테고리의 다른 글
6. Union 타입 / Type Alias (0) | 2023.01.16 |
---|---|
5. enum 타입 (0) | 2023.01.16 |
4. 함수타입 (0) | 2023.01.16 |
2. 타입스크립트 세팅 (0) | 2023.01.16 |
1. 타입스크립트란 ? (0) | 2023.01.16 |