Напиши тип Senior Объединения и сужение обновлено
Где сохранится литеральный тип
Вопрос
Какой конструкцией проверить объект на соответствие Config, но сохранить точные литеральные типы значений?
const config = { mode: 'dark', port: 80 } /* ? */;
Попробуйте сами
Напишите тип, как написали бы в коде.
Показать ответ и разбор
Коротко
Правильный тип: satisfies Config. Ответ Почему так : Config расширяет тип до Config, и mode станет string. satisfies Config проверяет совместимость, но оставляет 'dark' литералом - дальше по нему можно делать точное сужение.
Правильный тип
satisfies Config
Разбор
Ответ
satisfies Config
Почему так
: Config расширяет тип до Config, и mode станет string. satisfies Config проверяет совместимость, но оставляет 'dark' литералом - дальше по нему можно делать точное сужение.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.