@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>
  • Вопрос задан
  • 58 просмотров
Решения вопроса 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...
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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