let name:string = 'Joonyoung';
let age:number = 30;
let isAdult:boolean = true;
let a:number[] = [1, 2, 3];
let a:string[]
let a:Array<number> = [1, 2, 3];
let a:Array<string>[]
배열과 비슷한 모양인데, 인덱스 별로 타입이 다를 때 사용된다.
let b:[string, number];
b = ['Joonyoung', 26]; // 1번 경우
b = [26, 'Joonyoung']; // 2번 경우
void는 함수에서 아무것도 반환하지 않을 때, 주로 쓰인다.
function consolePrint():void{
console.log('준영아 정신차려라');
}
never는 항상 에러를 반환하거나, 영원히 끝나지 않는 함수에 사용할 수 있다.
function errorFunc():never{
throw new Error();
}
function loopFunc():never{
while(true){
console.log("제발 날 멈춰주세요!")
}
}
enum은 자바스크립트에는 없는 개념인데, 비슷한 값들 끼리 묶어준다는 개념이다.
enum Os {
Window,
Mac,
Linux,
}
운영체제로 분류되는 것들을 Os라는 enum으로 묶어주었다.
또한 enum의 특징으로는 안에 존재하는 요소에 숫자를 자동으로 할당해주는데, 순서대로 1씩 늘어난다.
가장 큰 장점이자 특징으로는 양방향 매핑이 된다는 점이다.
enum Os {
Window = 4,
Mac = 10,
Linux,
}
console.log(Os[10]); // Mac
console.log(Os['Mac']); // 10
또한 enum은 string을 할당할 수 있는데, 대신에 단방향 매핑 밖에 할 수 없게된다.
let a:null = null;
let b:undefined = undefined;