ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 타입스크립트 공부하기
    코드 찌끄리기 2024. 9. 22. 16:35

    타입스크립트는 여러 가지 개념과 구조를 지원하며, 이를 통해 다양한 방식으로 코드를 작성할 수 있다.

     

    1. 기본타입

    1-1. number : 숫자 값을 표현

    let age: number = 30;

     

    1-2. string : 문자열 값을 표현

    let name: string = "Alice";

     

    1-3. boolean : true 또는 false 값을 표현

    let isActive: boolean = true;

     

    1-4. null : null 값을 나타낸다.

    let n: null = null;

     

    1-5. undefined : 값이 정의되지 않은 상태를 나타낸다.

    let u: undefined = undefined;

     

    1-6. void : 함수의 반환값이 없음을 나타낸다.

    function logMessage(message: string): void {
        console.log(message); // 메시지를 출력하지만 반환값 없음
    }

     

    1-7. any : 어떤 타입이든 허용하는 타입

    let anything: any = "Could be anything"; // 문자열 할당
    anything = 42; // 이제 숫자 할당 가능

     

    2. 배열

    2-1. 숫자 배열

    let numbers1: number[] = [1, 2, 3];
    let numbers2: Array<number> = [1, 2, 3];

     

    2-2. 문자열 배열

    let strings1: string[] = ["a", "b", "c"];
    let strings2: Array<string> = ["a", "b", "c"];

     

    3. 튜플(Tuples)

    고정된 수의 요소와 각 요소의 타입을 정의할 수 있는 배열

    let tuple: [string, number] = ["Alice", 25]; // 첫 번째는 문자열, 두 번째는 숫자

     

    4. 객체(Object)

    4-1. 인터페이스(interfaces) : 객체의 구조를 정의

    interface Person {
        name: string;
        age: number;
    }
    
    let person: Person = { name: "Bob", age: 30 }; // Person 인터페이스에 맞는 객체

     

    4-2. 타입 별칭 (Type Aliases) : 타입에 별명을 붙여서 사용할 수 있다.

    type PersonType = {
        name: string;
        age: number;
    };
    
    let person2: PersonType = { name: "Charlie", age: 25 }; // PersonType에 맞는 객체

     

    5. 열거형 (Enums)

    상수의 집합을 정의하고, 의미 있는 이름으로 접근할 수 있다.

    enum Direction {
        Up,
        Down,
        Left,
        Right
    }
    
    let move: Direction = Direction.Up; // Direction.Up을 사용하여 값 할당

     

    6. 함수 (Functions)

    함수의 매개변수와 반환값에 타입을 지정할 수 있다.

    function add(a: number, b: number): number {
        return a + b; // 두 숫자의 합을 반환
    }
    
    const greet = (name: string): void => {
        console.log(`Hello, ${name}!`); // 인사 메시지 출력
    };

     

    7. 제네릭 (Generics)

    타입을 매개변수로 받아 유연한 코드를 작성할 수 있습니다.

    function identity<T>(arg: T): T {
        return arg; // 인수로 받은 값을 그대로 반환
    }
    
    let result1 = identity<string>("Hello"); // 문자열 타입으로 호출
    let result2 = identity<string>(1); // 숫자 타입으로 호출
    let result3 = identity<string>(false); // 불리언 타입으로 호출

     

    8. 유니온 타입 (Union Types)

    여러 타입을 동시에 사용할 수 있다.

    function printId(id: number | string) {
        console.log(`ID: ${id}`); // id가 숫자 또는 문자열일 수 있음
    }

     

    9. 인터섹션 타입 (Intersection Types)

    여러 타입을 결합하여 새로운 타입을 생성할 수 있다.

    type Person = {
        name: string;
    };
    
    type Employee = {
        id: number;
    };
    
    type EmployeePerson = Person & Employee; // Person과 Employee의 속성을 모두 가짐
    
    const employee: EmployeePerson = { name: "Alice", id: 1 }; // 두 타입을 모두 충족하는 객체

    '코드 찌끄리기' 카테고리의 다른 글

    타입스크립트 interface/type 알아보기  (0) 2024.09.22
    Context API  (1) 2024.08.09
    reduce() 메서드  (0) 2024.08.08
    splice() 메서드  (0) 2024.08.08
    slice() 메서드  (3) 2024.08.08
Designed by Tistory.