Type Challenges

If

#TypeScript

268 - If

조건 C, 참일 때 반환하는 타입 T, 거짓일 때 반환하는 타입 F를 받는 타입 If를 구현하세요. C는 true 또는 false이고, T와 F는 아무 타입입니다.

type A = If<true, "a", "b">; // expected to be 'a'
type B = If<false, "a", "b">; // expected to be 'b'

풀이

type If<C extends boolean, T, F> = C extends true ? T : F;

extends를 이용한 조건문 연습 문제인 듯 하다.

Reference

Type Challenges, 268 - If