TypeScript

[TypeScript] 타입스크립트 기본 타입 알아보기

otopligrm 2025. 7. 29. 21:48

타입스크립트는 자바스크립트의 상위 집합으로 코드에 타입(Type)을 부여하여

개발 과정에서 발생할 수 있는 오류를 미리 방지하고

코드의 안정성과 가독성을 높이는 데 도움을 줍니다.

타입스크립트의 기본 타입은 자바스크립트에서 사용하는 데이터 타입과 매우 유사하지만,

타입스크립트의 강력한 타입 시스템에 맞게 더 명확하게 정의되고 활용됩니다.

 


1. Boolean (불리언)

참/거짓을 나타내는 논리적인 타입을 말합니다.

let isDone: boolean = false;
let hasStarted: boolean = true;

 


2. Number (숫자)

모든 숫자 타입은 Number로 통일됩니다. 정수, 실수, 16진수, 2진수, 8진수 등 모든 형태의 숫자를 포함합니다. 자바스크립트와 마찬가지로, number 타입의 값은 64비트 부동소수점 형식으로 저장됩니다.

TypeScript
 
let decimal: number = 6;
let hex: number = 0xf00d;
let binary: number = 0b1010;
let octal: number = 0o744;
let pi: number = 3.14;

 

3. String (문자열)

문자 데이터를 나타내는 타입입니다. 작은따옴표/큰따옴표/백틱(템플릿 리터럴)을 모두 사용할 수 있습니다.

let name: string = "Kim";
let greeting: string = `Hello, ${name}!`;
 

4. Array (배열)

같은 타입의 값들을 여러 개 담는 타입입니다. type[] 또는 Array<type> 두 방식이 있습니다.

 
let numbers: number[] = [1, 2, 3];
let fruits: Array<string> = ["apple", "banana"];

 


5. Tuple (튜플)

배열인데 길이와 각 인덱스의 타입이 고정된 타입입니다. (예: [이름, 나이])

 
let user: [string, number] = ["Taewoo", 25];

6. Enum (열거형)

정해진 값들만 선택하도록 강제할 때 유용합니다. (상태값, 카테고리 등)

 
enum Direction {
  Up,
  Down,
  Left,
  Right,
}

let move: Direction = Direction.Left;

7. Any

어떤 타입이든 허용합니다. 편하지만 타입 안정성을 깨뜨릴 수 있어서 최소한으로 쓰는 걸 권장합니다.

 
let value: any = 1; value = "hello"; value = true;

8. Unknown

any보다 안전한 “모르는 타입”입니다. 사용하기 전에 타입 체크가 필수라서 안정적입니다.

let input: unknown = "hello"; if (typeof input === "string") { console.log(input.toUpperCase()); }

9. Void

함수에서 반환값이 없을 때 사용하는 타입입니다.

 
function logMessage(msg: string): void { console.log(msg); }

 


10. Null / Undefined

각각 “값이 없음”을 의미합니다. (프로젝트 설정에 따라 엄격하게 다뤄짐)

 
let n: null = null; let u: undefined = undefined;

11. Never

절대 발생하지 않는 값의 타입입니다. (예: 무한 루프, 항상 에러를 던지는 함수)

 
function throwError(message: string): never { throw new Error(message); }

12. Object (객체)

객체 타입은 보통 object로도 쓰지만, 실무에서는 구체적인 형태를 직접 정의하는 게 핵심입니다.

 
let person: { name: string; age: number } = { name: "Kim", age: 25, };

 


13. Union Type (유니온 타입)

여러 타입 중 하나가 될 수 있게 만드는 타입입니다. (API 응답/입력값에서 매우 자주 씀)

 
let id: string | number; id = "abc"; id = 123;

14. Literal Type (리터럴 타입)

값 자체를 타입으로 제한합니다. (버튼 variant, 상태값 같은 곳에 강력함)

 
let status: "success" | "error" | "loading"; status = "loading";

15. Type Alias / Interface (타입 별칭 / 인터페이스)

객체/함수 타입을 재사용 가능하게 정의합니다. (가독성/유지보수 핵심)

 
type User = { id: number; name: string; }; const u: User = { id: 1, name: "Kim" };

interface Product { id: number; price: number; } const p: Product = { id: 1, price: 3000 };

'TypeScript' 카테고리의 다른 글

제네릭 타입 변환과 axios,fetch  (0) 2025.09.12