TypeScript · Middle · Запитання 7 з 75
Що робить infer у type ElementType<T> = T extends (infer U)[] ? U : never?
- ✓Правильна відповідь: Оголошує змінну типу
U, яку TS виводить зі збігу з шаблоном - 2Запитує тип елемента масиву в компілятора під час виконання
- 3Робить
Uнеобов'язковим параметром дженерика зі значеннямunknown
Пояснення
infer використовується лише в extends-частині умовного типу: TS зіставляє T із шаблоном і «захоплює» потрібну частину. ElementType<string[]> → string. Так влаштовані ReturnType, Parameters, Awaited.