ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [type-challenges] 7_Readonly
    프로그래밍 언어/TypeScript 문제풀이 2022. 5. 22. 21:36

    Q :

    source :

    interface Todo {
      title: string
      description: string
    }
    
    const todo: MyReadonly<Todo> = {
      title: "Hey",
      description: "foobar"
    }
    
    todo.title = "Hello" // Error: cannot reassign a readonly property
    todo.description = "barFoo" // Error: cannot reassign a readonly property

    A :

    property in keyof T
    T로 들어온 요소를 꺼내서 사용할때 사용
    아래처럼도 사용이 가능합니다.

    type Props<T> = { [P in keyof T]? : T[P] }

     

    결과값 = Partial 과 동일한 기능
    해당값이 nullable로 변경된 자료형을 가지게됨

    그리하여 정답은 아래와 같습니다.

    type MyReadonly<T> = {
      readonly [P in keyof T]: T[P]
    }

     

    '프로그래밍 언어 > TypeScript 문제풀이' 카테고리의 다른 글

    [type-challenges] 11_Tuple to Object  (0) 2022.05.23
    [type-challenges] 4_pick  (0) 2022.05.22

    댓글

Designed by Tistory.