타입스크립트 타입 시스템: 계층과 호환성
Frontend
타입스크립트의 타입은 값들의 집합으로 이해할 수 있다.타입 계층도타입스크립트의 모든 타입은 계층 구조를 이루고 있다.최상위에는 unknown 타입(전체 집합)이 있고, 최하위에는 never타입(공집합)이 있으며, 그 사이에 다양한 타입들이 위치한다. 슈퍼타입과 서브타입슈퍼타입(부모 타입): 더 넓은 범위의 값을 포함하는 타입서브타입(자식 타입): 더 좁은 범위의 값을 포함하는 타입예를 들어,number 타입은 모든 숫자 값을 포함하고 20이라는 number 리터럴 타입은 오직 20만 포함한다. 따라서 number 리터럴 타입은 number 타입의 부분집합(서브타입)이다. 타입 호환성타입 호환성이란 A 타입의 값을 B 타입으로 취급해도 괜찮은지 판단하는 것이다. 업캐스팅 (Up Cast)서브타입의 값을 슈..
[TS] void와 never
TIL
void 타입아무런 값도 없음을 의미하는 타입이다. 보통은 아무런 값도 반환하지 않는 함수의 반환값 타입을 정의할 때 사용한다.// 아무런 값도 반환하지 않는 void 타입function func1(): void { console.log("hello");}// func2의 함수의 반환값은 string 타입function func2(): string { return "hello";} void 타입에는 오직 undefined만 할당할 수 있다. never 타입불가능을 의미하는 타입이다. 보통 함수가 어떠한 값도 반환할 수 없는 상황일 때 해당 함수의 반환값 타입을 정의하는 데 사용된다.never 타입을 사용하는 경우1. 무한 루프function func3(): never { while (true) {}..