본 블로그에 올라오는 TypeScript 예제는
엘리의 타입스크립트+객체지향 프로그래밍 마스터 강의에 기초함.
number
const num1: number = 11;
const num2: number = -11;
const num3: number = 0;
string
const str1: string = 'hello';
const str2: string = "hello";
const str3: string = `hello`;
boolean
const bool1: boolean = true
const bool2: boolean = false
void
function hello {
console.log('hello');
}
const helloFn: void = hello();
undefined
// 값이 있는지 없는지 결정되지않음을 표현
// 웬만하면 사용하지말자
let unde: undefined;
unde = undefined;
unde = 1;
null
// 값이 없는 상태
// 웬만하면 사용하지말자2
let nu: null;
nu = null;
unknown
// 알수없는 상태
// 웬만하면 사용하지말자3
// 왜 있느냐? 자바스트립트로 컴파일 해야하기때문에 필요
let unk: unknown = 0;
unk = 'str';
unk = true;
object
// 모든 객체 다 허용
// 웬만하면 사용하지말자4
let obj: object = {
hello : 'world'
};
// ...
obj = {
hi : 'world'
};
// ...
obj.hello // ???
obj.hi // ???
타입이 정해져있지않기때문에 중간에 재정의해도 문제가 없다. 따라서 타입스크립트를 쓰는 의미가 없다.
never
// 리턴할 계획이 없다.
function throwError(message: string): never {
throw new Error(message);
}
// never 타입으로 선언하는 일은 없을듯...
let error: never;
// 이런식으로 쓰이지않음...
error = throwError();
타입스크립트의 핵심은 타입을 명확히 하는 것!!!
primitive
- 1.원시의
- 2.원초적인
- 3.초생의
- 4.발달되지 않은
'개발언어 > TypeScript' 카테고리의 다른 글
교차타입 (Intersection Types) (0) | 2021.04.12 |
---|---|
식별 유니온 타입 (Discriminated Unions Type) (0) | 2021.04.12 |
타입 에일리어스 (Type Alias), 유니온 타입 (Union Type) (0) | 2021.04.10 |
배열 (Array), 튜플 (Tuple) (0) | 2021.04.10 |
함수 (Function) (0) | 2021.04.10 |
댓글