object literal / Partial<>

Cheddaryeon·2023년 7월 28일

object literal

  • 겉으로 보면 enum과 매우 흡사합니다. 하지만 enum이라는 키워드가 아니고 const라는 키워드를 사용한다
    (const 뿐 아니라 let도 사용이 가능)
  • 객체 리터럴은 키 + 값의 쌍(pair)으로 구성된 '객체'를 정의하는 방식

enum에 비해 object literal이 가지는 장점

  • enum의 각 멤버는 상수였기 때문에 number, string 타입의 값만 대입할 수 있다

    객체 리터럴에서는 '어떤 타입의 값'도 대입을 할 수 있다

  • 객체 리터럴은 다양한 데이터 타입을 지원하며 유연한 구조를 가질 수 있다
  • 코드 내에서 사용하기 전에 값이 할당되어야 하므로, 런타임 에러를 방지한다

Partial<T>

  • Partial<T> 타입은 타입 T의 모든 속성을 선택적으로 만든다
  • 이를 통해 기존 타입의 일부 속성만 제공하는 객체를 쉽게 생성할 수 있다

Required<t>

  • Partial 타입과는 반대로 Required<T> 타입은 타입 T의 모든 속성을 필수적으로 만든다
  • 다시 말해서, T 타입 객체에 정의된 모든 속성이 반드시 전부 제공이 되는 객체를 생성

Readonly<T>

  • Readonly<T> 타입은 타입 T의 모든 속성을 읽기 전용(read-only)으로 만든다
  • readonly 타입의 속성들로 구성된 객체가 아니어도 완전한 불변 객체로 취급할 수 있다

Pick<T, K>

  • Pick<T, K> 유틸리티 타입은 타입 T에서 K 속성들만 선택하여 새로운 타입을 만든다
  • 타입의 일부 속성만을 포함하는 객체를 쉽게 생성할 수 있다
profile
study frontend

0개의 댓글