Задать вопрос
@webe
frontend

Почему знак вопрос работает именно так?

Почему в A и B всегда тип User?

interface Cat  {
    active: boolean;
}
interface User  {
    age: 22;
}
type Test<T, U> = T extends {active:boolean} ? U : T;
type A = Test<User, Cat>
type B = Test<Cat, User>
  • Вопрос задан
  • 61 просмотр
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Решения вопроса 1
Alexandroppolus
@Alexandroppolus
кодир
ну так всё правильно:

1) User extends {active:boolean} ? Cat : User;
условие ложно, берем вариант после двоеточия

2) Cat extends {active:boolean} ? User : Cat;
условие истинно, берем вариант до двоеточия
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
otdameskapizm
@otdameskapizm
Помог ответ? Отметь решением...
Работает, так, как ему предначертано судьбой
https://developer.mozilla.org/ru/docs/Web/JavaScri...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы