728x90
반응형
문제
문제 의도 및 개념정리
- Mapped Type 응용
- Conditional Types
내가 생각한 풀이 방법
- 처음에 intersection으로 접근했다.
- T & { [P in U] : V};
- 위 타입은 &로 연결되어있다. 두개가 합쳐진 형태의 interface는 아니라서 안된다.
- Equal<{ a:1, b:2 }, {a:1} & {b:2}> 는 False 이다.
- 따라서 새로운 형태로 만들어야 하는구나. 라고 생각했다.
- Mapped Type에서 기존 키와 새로운 키를 합친다. [ X in (keyof T) | U ]
- 기존의 key + 새로운 key를 포함해서 X에 담는다.
- 조건부 타입을 이용해서 value를 잘 넣어주면 된다.
실행하지 못했던 이유 및 해결 방법
해답
Reference
한국어 답안지에 잘못된 내용들이 있었습니다. 그대로 놔두면 저처럼 이상한 지식을 맞다고 받아들일것 같아서, 수정했습니다.
includes는 제가 contribute 했습니다 하하.. 물론 해답이 맞지는 않습니다. 다 쓰면 너무 길어지거든요.. 나중에 블로그에서 다루겠습니다.
Medium도 처음에 푸는 2문제에서 막혔는데, 해결하고 나니 이제는 조금 답이 보이기 시작합니다.
오픈소스의 제네릭이 부담스럽지 않은 그때까지 달려야겠습니다!
https://ghaiklor.github.io/type-challenges-solutions/ko/easy-includes.html
고통을 긍정적으로!! 화이팅!!
728x90
반응형
'WEB > 타입 챌린지' 카테고리의 다른 글
[Type Challenge] Capitalize (0) | 2023.04.09 |
---|---|
[Type Challenge] BEM style string (0) | 2023.04.07 |
[Type Challenge] Absolute (0) | 2023.04.03 |
[Type Challenge] Length of Tuple (0) | 2023.04.02 |
[Type Challenge] Pick (0) | 2023.04.01 |