
Урок 08 · 10 хв
Utility types
Сім штук покривають майже всю повсякденну роботу.
Не вчи каталог утиліт повністю. Ось ті, що справді пишеш щодня. Повний список — в Utility Types: Partial, Required, Pick, Omit, Record, ReturnType, Awaited і ще з десяток вузьких на кшталт Exclude / Extract. Їх відкриєш, коли впрешся.
Утиліта не створює нову сутність з нуля — вона перебудовує вже названий тип. Pick<User, "id" | "name"> завжди йде за User: перейменував поле у вихідному типі — похідна форма оновиться сама. Тому спершу ім'я (User, Post), потім обгортка.
typeof тут — оператор TypeScript, а не JS. Він бере тип значення. Разом із keyof це спосіб не дублювати ключі вручну: додав маршрут в об'єкт — union оновився.
- Utility Types — Partial, Pick, Omit, Record, Awaited
- Typeof Type Operator — тип із готового значення
- Indexed Access Types —
User["id"]іT[K]
Перевірка
Закріпи, поки не пішов далі
1. Потрібна форма лише з
idіnameзUser. Що взяти?2. Що таке
Record<"a" | "b", number>?