Репозиторий содержит мои заметки и практические задания по изучению сложных и продвинутых типов в TypeScript, выполненные за один день. Проект структурирован по темам: Mapped Types, Conditional Types, Key Remapping и Recursive Types.
Весь прогресс зафиксирован с использованием стандарта Conventional Commits. Ниже представлены основные изученные темы:
- Рекурсивные типы: Реализация
DeepReadonlyиDeepPublishдля работы с любой вложенностью объектов. - Фильтрация и трансформация: Решение задачи
PublishProfileс удалением ключей (as never) и трансформацией массивов. - Трансформатор API: Реализация
APIResponseдля конвертации чисел в строки и удаления булевых значений. - Механизм
infer: Использованиеinferдля распаковки типов изPromiseиReturnTypeфункций. - Условные типы: Изучение
Conditional Types(extends ? :), механизмаinferи фильтрацииUnion-типов. - Mapped Types Advanced: Реализация сложных трансформаций типов, метаданных и фильтрации через
Mapped Types. - Key Remapping: Использование
as,Capitalizeи шаблонных строк для создания геттеров и сеттеров. - Модификаторы: Добавление примеров реализации
Partial,Readonlyи удаление модификаторов (-?,-readonly). - Основы Mapped Types: Добавление примеров использования
keyofи базовыхMapped Types. - Инициализация: Инициализация проекта и базовая настройка typescript.
Для запуска и изучения примеров вам потребуется Node.js и TypeScript.
- Клонируйте репозиторий:
git clone <URL_ВАШЕГО_РЕПОЗИТОРИЯ> - Установите зависимости:
npm install(если есть файлpackage.json) - Откройте файлы
*-theory.tsи*-practice.tsв вашем редакторе (например, VS Code).