Конвертация типа Man в тип AgeType

Для объектного типа { age: Age } используйте Pick<Man, 'age'>. Выражение Man['age'] извлекает только тип значения Age, без оболочки объекта.

Короткий ответ

Что ответить на собеседовании

Для объектного типа { age: Age } используйте Pick<Man, 'age'>. Выражение Man['age'] извлекает только тип значения Age, без оболочки объекта.

Подробный разбор

Ответ с пояснениями

Условие

Необходимо преобразовать тип Man так, чтобы он соответствовал объявленному типу AgeType.

 type Man = {
    name: string;
    age: Age;
}

// { age: Age; }
// type AgeType =

Ответ

Для объектного типа { age: Age } используйте Pick<Man, 'age'>. Выражение Man['age'] извлекает только тип значения Age, без оболочки объекта.

type AgeType = Pick<Man, 'age'>;
// Эквивалентно:
type AnotherAgeType = { age: Man['age'] };

Pick выбирает указанные свойства исходного типа и сохраняет их модификаторы. В условии тип Age должен быть объявлен отдельно; подменять его числом без знания контракта не требуется. Это преобразование типов, а не создание нового объекта во время выполнения.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее