ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 타입스크립트 꿀팁 3편
    카테고리 없음 2023. 11. 23. 16:56
    반응형

    5가지 타입스크립트 꿀팁

    타입스크립트는 자바스크립트의 상위 호환 언어로, 강력한 타입 시스템을 제공합니다. 타입 시스템을 사용하면 코드의 오류를 미리 발견하고, 보다 안전하고 효율적인 코드를 작성할 수 있습니다.

    이번 포스팅에서는 타입스크립트의 5가지 꿀팁을 소개합니다. 이 꿀팁을 활용하면 타입스크립트의 타입 시스템을 더욱 효과적으로 사용할 수 있습니다.

    1. 맵 타입 사용하기

    맵 타입은 객체의 속성과 값을 매핑하는 타입입니다. 맵 타입을 사용하면 속성을 수정하여 기존 유형을 변화할 수 있습니다.

    예를 들어, 다음과 같은 MyType 타입이 있다고 가정합니다.

    type MyType = { name: string; age: number; };

    이 MyType 타입을 사용하여 다음과 같은 객체를 생성할 수 있습니다.

    const person = new MyType({ name: "John Doe", age: 30, });

    이 객체에 "address" 속성을 추가하려면 다음과 같이 맵 타입을 사용할 수 있습니다.

    type MyType = { name: string; age: number; } & { address: string; };

    이제 다음과 같이 객체를 생성할 수 있습니다.

    const person = new MyType({ name: "John Doe", age: 30, address: "123 Main Street", });

    2. 합집합 연산자 사용하기

    합집합 연산자는 두 개의 타입을 결합하여 새로운 타입을 만드는 연산자입니다. 합집합 연산자를 사용하면 객체의 키를 공용체 유형으로 가져올 수 있습니다.

    예를 들어, 다음과 같은 MyType1과 MyType2 타입이 있다고 가정합니다.

    ``` type MyType1 = { name: string; };

    type MyType2 = { age: number; }; ```

    이 두 타입의 합집합은 다음과 같습니다.

    type MyType = MyType1 & MyType2;

    이제 다음과 같이 객체를 생성할 수 있습니다.

    const person = new MyType({ name: "John Doe", age: 30, });

    3. 제네릭 사용하기

    제네릭은 다양한 유형에서 작동하는 재사용 가능한 코드를 만드는 데 사용할 수 있습니다. 제네릭을 사용하면 타입을 추상화하여 코드의 유연성을 높일 수 있습니다.

    예를 들어, 다음과 같은 MyFunction 함수가 있다고 가정합니다.

    function MyFunction(data: string): void { // ... }

    이 함수는 "string" 타입의 데이터만 처리할 수 있습니다. 만약 다른 타입의 데이터도 처리하고 싶다면 다음과 같이 제네릭을 사용할 수 있습니다.

    function MyFunction<T>(data: T): void { // ... }

    이제 다음과 같이 함수를 사용할 수 있습니다.

    MyFunction("Hello, world!"); // string 타입의 데이터 MyFunction(123); // number 타입의 데이터

    4. 데코레이터 사용하기

    데코레이터는 클래스, 함수, 변수 등의 메타 데이터를 추가할 수 있는 기능입니다. 타입스크립트는 데코레이터를 지원하므로 사용자 지정 데코레이터를 만들어 코드의 기능을 추가할 수 있습니다.

    예를 들어, 다음과 같은 MyDecorator 데코레이터가 있다고 가정합니다.

    function MyDecorator(target: any, propertyKey: string, descriptor: PropertyDescriptor): void { // ... }

    이 데코레이터를 사용하여 다음과 같이 함수에 메타 데이터를 추가할 수 있습니다.

    @MyDecorator function myFunction(): void { // ... }

    5. Objects.assign() 사용하기

    Objects.assign() 함수는 여러 객체의 속성을 명합하여 새로운 객체를 만드는 함수입니다. Objects.assign

    반응형

    댓글

Designed by Tistory.