공부공부/TS

[typescript 핸드북] 04. 리터럴 타입

고생쨩 2024. 2. 19. 09:31
728x90

typescript 핸드북 학습내용 정리
https://typescript-kr.github.io/pages/the-handbook.html

리터럴 타입

리터럴 타입 좁히기

const로 변수를 선언하게 되면 Typescript에게 이 객체는 절대 변경되지 않음을 알림

// 따라서, TypeScript는 문자열이 아닌 "Hello World"로 타입을 정합니다.
const helloWorld = "Hello World";

// 반면, let은 변경될 수 있으므로 컴파일러는 문자열이라고 선언할 것입니다.
let hiWorld = "Hi World";

문자열 리터럴 타입

// 허용된 문자열이 아닌 다른 문자열을 사용하게 되면 오류 발생
type Easing = "ease-in" | "ease-out" | "ease-in-out";
// 문자열 리터럴 타입은 오버로드를 구별하는 것과 동일하게 사요ㅗㅇ가능

function createElement(tagName: "img"): HTMLImageElement;
function createElement(tagName: "input"): HTMLInputElement;
// ... 추가적인 중복 정의들 ...
function createElement(tagName: string): Element {
  // ... 여기에 로직 추가 ...
}

숫자형 리터럴 타입

주로 설정값을 설명할때 사용됨

type tileSize: 8 | 16 | 32;

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.