Решения для Type Challenges
DISCLAIMER: используя материалы из этого проекта на русском языке, вы автоматически соглашаетесь с тем, что россия это страна-террорист, путин это подзаборный творожок “Диктатор”, а всех на россии нужно изолировать от цивилизованного мира.
Что такое Type Challenges? Type Challenges это проект, основная цель которого, предоставить подборку задач для TypeScript. И в этих задачах есть подвох. А именно, решения этих задач нужно реализовывать используя только систему типов TypeScript. Другими словами, задача считается пройденной в том и только в том случае, если вы сделали “правильный” тип.
Порой такие задачи сложно решить ввиду многих причин. Например, незнание какой-то возможности языка программирования или если вы только начинаете разбираться в типах. И много других причин, которые можно долго перечислять. Чтобы упростить образовательный процесс и помочь вам лучше разобраться в системе типов TypeScript, существует этот ресурс.
Здесь собраны решения большинства задач из проекта Type Challenges. Более того, эти решения подробно и пошагово разобраны. После того как прочитали объяснение к решению задачи, вы найдете небольшую подборку полезных ссылок для более углубленного изучения. Если же удалось решить задачу каким-то другим способом (не так как на сайте) вы можете оставить решение в комментариях.
Если у вас есть какие-то вопросы по решениям, предложения по сайту и прочее - оставляйте их в комментариях или дайте нам знать об этом в репозитории.
Я рекомендую вам начать играться с этим проектом по следующему плану. Начните с уровня сложности “Разогрев” и идите к “Экстремальный” уровню сложности, проблема за проблемой. Сначала откройте задачу и попробуйте решить её своими силами, перейдя по ссылке “Проблема”. Если же у вас не получилось решить задачу, ничего страшного. Возвращайтесь сюда и подсмотрите в решение задачи, перейдя по ссылке “Решение”.
На этом моё вступление в проект заканчивается. Желаю вам приятного времяпровождения за решениями задач!
Разогрев
Лёгкий
- Awaited ⸱ Проблема ⸱ Решение
- Concat ⸱ Проблема ⸱ Решение
- Exclude ⸱ Проблема ⸱ Решение
- First of Array ⸱ Проблема ⸱ Решение
- If ⸱ Проблема ⸱ Решение
- Includes ⸱ Проблема ⸱ Решение
- Pick ⸱ Проблема ⸱ Решение
- Push ⸱ Проблема ⸱ Решение
- Readonly ⸱ Проблема ⸱ Решение
- Length of Tuple ⸱ Проблема ⸱ Решение
- Tuple to Object ⸱ Проблема ⸱ Решение
- Unshift ⸱ Проблема ⸱ Решение
Средний
- Absolute ⸱ Проблема ⸱ Решение
- AnyOf ⸱ Проблема ⸱ Решение
- Append Argument ⸱ Проблема ⸱ Решение
- Append to Object ⸱ Проблема ⸱ Решение
- Capitalize ⸱ Проблема ⸱ Решение
- Chainable Options ⸱ Проблема ⸱ Решение
- Deep Readonly ⸱ Проблема ⸱ Решение
- Diff ⸱ Проблема ⸱ Решение
- Drop Char ⸱ Проблема ⸱ Решение
- EndsWith ⸱ Проблема ⸱ Решение
- Flatten ⸱ Проблема ⸱ Решение
- IsNever ⸱ Проблема ⸱ Решение
- IsUnion ⸱ Проблема ⸱ Решение
- KebabCase ⸱ Проблема ⸱ Решение
- Last of Array ⸱ Проблема ⸱ Решение
- Length of String ⸱ Проблема ⸱ Решение
- Merge ⸱ Проблема ⸱ Решение
- MinusOne ⸱ Проблема ⸱ Решение
- Mutable ⸱ Проблема ⸱ Решение
- Omit ⸱ Проблема ⸱ Решение
- Percentage Parser ⸱ Проблема ⸱ Решение
- Permutation ⸱ Проблема ⸱ Решение
- PickByType ⸱ Проблема ⸱ Решение
- Pop ⸱ Проблема ⸱ Решение
- Promise.all ⸱ Проблема ⸱ Решение
- Readonly 2 ⸱ Проблема ⸱ Решение
- Remove Index Signature ⸱ Проблема ⸱ Решение
- Replace ⸱ Проблема ⸱ Решение
- ReplaceAll ⸱ Проблема ⸱ Решение
- ReplaceKeys ⸱ Проблема ⸱ Решение
- Get Return Type ⸱ Проблема ⸱ Решение
- String to Union ⸱ Проблема ⸱ Решение
- Trim ⸱ Проблема ⸱ Решение
- Trim Left ⸱ Проблема ⸱ Решение
- Tuple to Union ⸱ Проблема ⸱ Решение
- Type Lookup ⸱ Проблема ⸱ Решение
Сложный
Экстремальный