반응형
Any
let isDone: any = false;
타입스크립트에서는 모든 변수(상수 제외)를 let으로 선언한다. 물론 기존 자바스크립트의 선언 방식인 var로도 선언할 수 있다. 만약 기존 자바스크립트처럼 형식 구분 없이 사용하고 싶다면 let val1: any와 같이 형식을 any로 설정하면 된다.
Boolean
let isDone: boolean = false;
Boolean은 참/거짓을 판명할 때 사용한다. Boolean의 사용방법은 다른 언어와 큰 차이는 없다.
Number
let decimal: number = 6;
let hex: number = 0xf00d;
let binary: number = 0b1010;
let octal: number = 0o744;
let big: bigint = 100n;
타입스크립트에서 정수, 실수형을 포함한 모든 부동 숫자들을 표현하기 위해 number 변수를 사용한다. 따라서 숫자형을 사용한다면 Number를 사용하면 된다.
String
let color: string = "blue";
color = 'red';
string은 문자열을 표현할 때 사용한다. String의 사용방법은 다른 언어와 큰 차이는 없다.
Array
let list: number[] = [1, 2, 3];
타입스크립트에서 배열은 기본적으로 '자료형[]' 의 형식으로 사용한다.
let list: Array<number> = [1, 2, 3];
만약 'Array<자료형>' 의 형식이 더 익숙하다면 그렇게 사용해도 된다.
Tuple
// Declare a tuple type
let x: [string, number];
// Initialize it
x = ["hello", 10]; // OK
// Initialize it incorrectly
x = [10, "hello"]; // Error
Tuple은 배열에서 특정한 위치에 정해진 자료형만 사용할 수 있도록 강제할 수 있다.
Enum
enum Color {
Red,
Green,
Blue,
}
let c: Color = Color.Green;
enum은 C#, JAVA에서의 Class, C++에서의 Struct와 비슷하다. enum을 통해 집합을 만들어 더 OOP적인? 프로그래밍을 할 수 있다.
Unknown
declare const maybe: unknown;
// 'maybe' could be a string, object, boolean, undefined, or other types
const aNumber: number = maybe;
*** ERR : Type 'unknown' is not assignable to type 'number'. ***
if (maybe === true) {
// TypeScript knows that maybe is a boolean now
const aBoolean: boolean = maybe;
// So, it cannot be a string
const aString: string = maybe;
*** ERR : Type 'boolean' is not assignable to type 'string'. ***
}
if (typeof maybe === "string") {
// TypeScript knows that maybe is a string
const aString: string = maybe;
// So, it cannot be a boolean
const aBoolean: boolean = maybe;
*** ERR : Type 'string' is not assignable to type 'boolean'. ***
}
Unknown은 변수의 형식을 정해두지 않은 채로 타입스크립트에서 알아서 판단하게 두는 것 같다. 이는 더욱 유연한 프로그래밍을 가능케 한다.
Source : www.typescriptlang.org/docs/handbook/basic-types.html
반응형
'옛날 글들 > TypeScript' 카테고리의 다른 글
[TypeScript] 3. Node.JS 에서 타입스크립트 사용하기 (0) | 2020.12.02 |
---|---|
[TypeScript] 1. VSCode에서 Typescript 컴파일하기 (0) | 2020.11.30 |
[Typescript] 0. 타입스크립트를 선택한 이유, 장단점 (0) | 2020.11.23 |