Void
void : 공허(아무것도 없음)를 의미하는 타입
주로 "반환값을 무시하는 함수"에 사용된다.
function func1(): string {
return "hello";
}
function func2(): void {
console.log("hello");
}
let a: void;
a = 1;
a = "hello";
a = {};
a = undefined;
a = null;
void 타입 변수에는 undefined만 할당 가능 (strictNullChecks가 true일 경우)
- ** Type 'null' id not assignable to type 'void'
tsconfig.json 파일 내에 "strictNullChecks": false를 설정하면 null을 할당할 수 있게 된다.
Never
never: 불가능한 상태를 의미하는 타입
절대 값을 가질 수 없으며, 함수가 정상적으로 종료되지 않는 경우에 사용된다.
function func3(): never {
while (true) {}
}
function func4(): never {
throw new Error();
}
never 타입은 어떤 값도 가질 수 없는 타입이다.
- 예외를 던지거나, 무한 루프처럼 절대 끝날 수 없는 함수에서 사용된다.
- 반환값이
never인 함수는 실행이 끝날 가능성이 없으므로, return이 존재하지 않는다.