IMCAT.DEV
로그인 가입
TypeScript 입문 문법

TypeScript 기본 문법

TypeScript 기본 문법 — 초급

TypeScript 기본 문법

1. 도입 (왜 배워야 하는가)

TypeScript는 JavaScript의 상위 집합으로, 정적 타입을 지원합니다. 이는 즉, 코드 작성 시 오류를 사전에 발견할 수 있어, 대규모 애플리케이션 개발에 매우 유용합니다. 실무에서 TypeScript를 사용하면 코드의 가독성과 유지보수성이 향상되며, 팀원 간의 협업도 더 원활해집니다.

TypeScript를 배우지 않으면, 코드에서 발생할 수 있는 오류를 런타임에만 발견하게 되어, 디버깅 시간이 길어지고, 예기치 않은 버그가 발생할 수 있습니다. 특히 대형 프로젝트에서는 이러한 문제로 인해 생산성이 저하될 수 있습니다.

2. 핵심 개념 설명

2.1 변수 선언

TypeScript에서는 변수를 let, const, var로 선언할 수 있습니다. 각각의 차이는 다음과 같습니다.

키워드설명사용 예시
let재할당 가능한 변수 선언let name = "John";
const재할당 불가능한 상수 선언const pi = 3.14;
var함수 스코프 변수를 선언 (비추천)var age = 30;

2.2 타입

TypeScript는 변수를 선언할 때 타입을 명시할 수 있습니다. 예를 들어, 숫자, 문자열, 배열 등이 있습니다.

  • 문자열: string
  • 숫자: number
  • 불리언: boolean
  • 배열: Array<number> 또는 number[]
  • 3. 기본 코드 예제

    아래는 TypeScript의 기본 변수를 선언하고 사용하는 코드입니다.

    let name: string = "Alice"; // 이름을 문자열 타입으로 선언
    const age: number = 25;    // 나이를 숫자 타입으로 선언
    let isStudent: boolean = true; // 학생 여부를 불리언 타입으로 선언
    
    console.log(name); // "Alice"
    console.log(age); // 25
    console.log(isStudent); // true

    실행 결과

    Alice
    25
    true

    코드 한 줄씩 동작 설명

  • let name: string = "Alice";: name이라는 변수를 문자열 타입으로 선언하고 "Alice"라는 값을 할당합니다.
  • const age: number = 25;: age라는 변수를 숫자 타입으로 선언하고 25라는 값을 할당합니다. 이 변수는 재할당이 불가능합니다.
  • let isStudent: boolean = true;: isStudent라는 변수를 불리언 타입으로 선언하고 true라는 값을 할당합니다.
  • console.log(name);: name의 값을 출력합니다.
  • console.log(age);: age의 값을 출력합니다.
  • console.log(isStudent);: isStudent의 값을 출력합니다.
  • 4. 실전 활용 예제

    예제 1: 쇼핑몰에서 장바구니 구현

    쇼핑몰에서 장바구니에 상품을 추가할 때 TypeScript를 사용하면 타입 안정성을 유지할 수 있습니다.

    type Product = {
        id: number;
        name: string;
        price: number;
    };
    
    let cart: Product[] = []; // 장바구니는 Product 타입의 배열
    
    function addToCart(product: Product) {
        cart.push(product); // 장바구니에 상품 추가
    }
    
    const newProduct: Product = { id: 1, name: "Laptop", price: 1500 };
    addToCart(newProduct);
    console.log(cart);

    예제 2: 사용자 정보 처리

    사용자 정보를 처리할 때에도 TypeScript를 활용하여 안정성을 높일 수 있습니다.

    type User = {
        username: string;
        email: string;
    };
    
    function createUser(user: User) {
        console.log(사용자 ${user.username}가 생성되었습니다.);
    }
    
    const user: User = { username: "john_doe", email: "[email protected]" };
    createUser(user);

    5. 흔한 실수와 주의사항

    실수 1: 타입 불일치

    let age: number = "25"; // 오류 발생

    올바른 코드:

    let age: number = 25; // 숫자로 할당

    실수 2: 변수를 재선언

    const name = "Alice";
    name = "Bob"; // 오류 발생

    올바른 코드:

    let name = "Alice"; // let을 사용해야 재할당 가능
    name = "Bob"; // 재할당 가능

    6. 정리

  • TypeScript는 정적 타입을 지원하여 오류를 사전에 방지할 수 있습니다.
  • 변수 선언 시 let, const, var의 차이를 이해해야 합니다.
  • 타입을 명시함으로써 코드의 안정성을 높일 수 있습니다.
  • 실무에서는 타입 정의와 함수를 활용하여 유지보수성을 높일 수 있습니다.
  • 다음에 학습하면 좋은 주제

  • TypeScript의 고급 타입 (인터페이스, 제너릭)
  • 비동기 프로그래밍 (Promise, async/await)
  • TypeScript와 React 통합 사용법