https://github.com/type-challenges/type-challenges
Collection of TypeScript type challenges with online judge
https://github.com/type-challenges/type-challenges
challenges type type-system typescript
Last synced: about 1 year ago
JSON representation
Collection of TypeScript type challenges with online judge
- Host: GitHub
- URL: https://github.com/type-challenges/type-challenges
- Owner: type-challenges
- License: mit
- Created: 2020-07-23T14:33:11.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2025-04-23T00:06:00.000Z (about 1 year ago)
- Last Synced: 2025-05-05T14:19:52.322Z (about 1 year ago)
- Topics: challenges, type, type-system, typescript
- Language: TypeScript
- Homepage: https://tsch.js.org/
- Size: 2.94 MB
- Stars: 45,248
- Watchers: 160
- Forks: 4,930
- Open Issues: 31,898
-
Metadata Files:
- Readme: README.ja.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- pure-awesomeness - Type Challenges
- awesome-angular - type-challenges - Collection of TypeScript type challenges with online judge. (Underlying Technologies / TypeScript)
- StarryDivineSky - type-challenges/type-challenges
- awesome-github-projects - type-challenges - Collection of TypeScript type challenges with online judge ⭐48,020 `TypeScript` 🔥 (🔧 Utilities & Miscellaneous)
- frontend-focus - type-challenges
- awesome-fe-resources - type-challenges
- AiTreasureBox - type-challenges/type-challenges - 11-03_46881_1](https://img.shields.io/github/stars/type-challenges/type-challenges.svg)|Collection of TypeScript type challenges with online judge| (Repos)
- awesome-list - type-challenges
- awesome-starred-test - type-challenges/type-challenges - Collection of TypeScript type challenges with online judge (TypeScript)
- awesome-learning - Type Challenges
- resources - TypeScript type challenges
- awesome-github-repos - type-challenges/type-challenges - Collection of TypeScript type challenges with online judge (TypeScript)
- awesome-luooooob - type-challenges/type-challenges - Collection of TypeScript type challenges with online judge (TypeScript)
- awesome-github-star - type-challenges - challenges | 36563 | (TypeScript)
- awesome - type-challenges/type-challenges - Collection of TypeScript type challenges with online judge (TypeScript)
- awesome - type-challenges/type-challenges - Collection of TypeScript type challenges with online judge (TypeScript)
- awesome-list - type-challenges - challenges | 6885 | (TypeScript)
- fucking-awesome-angular - type-challenges - Collection of TypeScript type challenges with online judge. (Underlying Technologies / TypeScript)
README
TypeScript 型の課題集
## はじめに
TypeScript のチューリング完全な型システムの力で
高品質な型は潜在的なバグを回避しつつ、プロジェクトの保守性を向上させるのに役立ちます。
TypeScriptには [ts-toolbelt](https://github.com/millsp/ts-toolbelt), [utility-types](https://github.com/piotrwitek/utility-types), [simplytyped](https://github.com/andnp/simplytyped) など優れた型ユーティリティライブラリがあり、私たちは多くの後押しを得ているはずです。
このプロジェクトは、型システムがどのように動作するのかを理解したり、独自の型ユーティリティを書いたり、課題へのチャレンジを楽しむことをサポートします。また、実際の業務で直面した問題を質問したり、その答えを得られるコミュニティを作りたいと考えています。 - そこでの問題が課題集に追加されるかもしれません!
## 課題集
> 以下のバッジをクリックすると、課題の詳細が表示されます。
お試し (1)
初級 (13)
-
4・Pick -
7・Readonly -
11・Tuple to Object -
14・First of Array -
18・Length of Tuple -
43・Exclude -
189・Awaited -
268・If -
533・Concat -
898・Includes -
3057・Push -
3060・Unshift -
3312・Parameters
中級 (102)
-
2・Get Return Type -
3・Omit -
8・Readonly 2 -
9・Deep Readonly -
10・Tuple to Union -
12・Chainable Options -
15・Last of Array -
16・Pop -
20・Promise.all -
62・Type Lookup -
106・Trim Left -
108・Trim -
110・Capitalize -
116・Replace -
119・ReplaceAll -
191・Append Argument -
296・Permutation -
298・Length of String -
459・Flatten -
527・Append to object -
529・Absolute -
531・String to Union -
599・Merge -
612・KebabCase -
645・Diff -
949・AnyOf -
1042・IsNever -
1097・IsUnion -
1130・ReplaceKeys -
1367・Remove Index Signature -
1978・Percentage Parser -
2070・Drop Char -
2257・MinusOne -
2595・PickByType -
2688・StartsWith -
2693・EndsWith -
2757・PartialByKeys -
2759・RequiredByKeys -
2793・Mutable -
2852・OmitByType -
2946・ObjectEntries -
3062・Shift -
3188・Tuple to Nested Object -
3192・Reverse -
3196・Flip Arguments -
3243・FlattenDepth -
3326・BEM style string -
3376・InorderTraversal -
4179・Flip -
4182・Fibonacci Sequence -
4260・文字の組み合わせ -
4425・Greater Than -
4471・Zip -
4484・IsTuple -
4499・Chunk -
4518・Fill -
4803・Trim Right -
5117・Without -
5140・Trunc -
5153・IndexOf -
5310・Join -
5317・LastIndexOf -
5360・Unique -
5821・MapTypes -
7544・Construct Tuple -
8640・Number Range -
8767・Combination -
8987・Subsequence -
9142・CheckRepeatedChars -
9286・FirstUniqueCharIndex -
9616・Parse URL Params -
9896・GetMiddleElement -
9898・Appear only once -
9989・Count Element Number To Object -
10969・Integer -
16259・ToPrimitive -
17973・DeepMutable -
18142・All -
18220・Filter -
21104・FindAll -
21106・Combination key type -
21220・Permutations of Tuple -
25170・Replace First -
25270・Transpose -
26401・JSON Schema to TypeScript -
27133・Square -
27152・Triangular number -
27862・CartesianProduct -
27932・MergeAll -
27958・CheckRepeatedTuple -
28333・Public Type -
29650・ExtractToObject -
29785・Deep Omit -
30301・IsOdd -
30430・Tower of hanoi -
30958・Pascal's triangle -
30970・確定した文字列リテラル -
34007・Compare Array Length -
34857・Defined Partial Record -
35045・Longest Common Prefix -
35191・Trace -
35252・IsAlphabet