[TypeScript]기본 타입 정리2

feelslikemmmm·2021년 5월 17일
0

TypeScript

목록 보기
2/15
post-thumbnail

any

any 타입은 모든 값을 포함하는 타입입니다

그래서 숫자 혹은 문자열 심지어 함수도 입력할 수 있습니다

any 타입은 기존에 JS로 작성된 프로젝트를 TS로 포팅하는 경우에 유용하게 사용할 수 있습니다

기존 프로젝트의 모든 타입을 한번에 정의하는것은 부담되기 때문에

타입 에러가 나는 부분은 임시로 any 타입으로 정의하면 됩니다

any 타입은 실제로 타입을 알 수 없는 경우나 타입 정의가 안된 외부 패키지를 사용하는 경우에도

사용하기 좋습니다

그리고 any 타입은 타입의 일부만 알고 전체는 알지 못할 때 유용합니다

위 예시 처럼 여러 다른 타입이 섞인 배열을 다룰 수 있습니다

단, any 타입을 남발하면 타입스크립트를 사용하는 의미가 퇴색되기 때문에 최대한 사용하지 않는 것이 좋습니다

void, never

함수의 반환 타입으로 void 와 never를 사용할 수 있습니다

아무값도 반환하지 않고 종료되는 함수의 반환 타입은 void 타입으로 정의할 수 있습니다

그리고 항상 예외가 발생해서 비정상적으로 종료되거나 무한루프 때문에 종료되지 않는

함수의 반환 타입은 never 타입으로 정의할 수 있습니다

보통 never는 거의 사용할 일이 없습니다

이유는 never 타입에는 절대 다른 값을 리턴할 수 없기 때문에 에러를 던지던지

while을 true로 줘서 계속 도는것이 아니면 never를 쓸 수 없기 때문입니다

object

object는 원시 타입이 아닌 타입을 나타냅니다

예를 들어, number, string, boolean, bigint, symbol, null,

또는 undefined 가 아닌 나머지를 의미합니다

하지만 예시처럼 특정 속성값에 접근하면 타입 에러가 발생합니다

속성 정보를 포함해서 타입을 정의하기 위해서는 인터페이스를 사용해야 합니다

type keyword

type 키워드를 이용해서 타입에 별칭을 줄 수가 있습니다

이렇게 number 또는 string이 가능한 타입을 정의해놓고

이것을 원하는 곳에서 사용할 수 있습니다

예시에서는 숫자와 문자열을 모두 입력할 수 있게 됩니다

출처
이 포스팅은 이재승 개발자님의 타입스크립트 시작하기 강의와
타입스크립트 공식 웹 사이트 프로젝트인 TypeScript-Handbook 을 통해서
공부한 내용을 기반으로 작성되었습니다

profile
꾸준함을 잃지 말자는 모토를 가지고 개발하고 있습니다 :)

0개의 댓글