Gatsby
ΠΠΠ§ΠΠ«Π
- Π Π΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ
- 10 ΠΠΊΡ 2018
- Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ
- 47,143
- Π Π΅Π°ΠΊΡΠΈΠΈ
- 236,909
ΠΠ²ΡΠΎΡ: Stepik, Π ΠΎΠΌΠ°Π½ ΠΠ°ΠΊΡΠΈΠΌΠΎΠ²
ΠΠ°Π·Π²Π°Π½ΠΈΠ΅: TypeScript Ρ 0 Π΄ΠΎ ΠΡΠΎ. Π Π΅ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ ΠΏΠΎ TS, ΡΠ°Π·Π±ΠΎΡ ΡΠ»ΠΎΠΆΠ½ΡΡ ΡΠ΅ΠΌ (2025)

ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅:
ΠΡΡΡ ΠΏΠΎ TypeScript: ΠΎΡ Π°Π·ΠΎΠ² Π΄ΠΎ ΡΠ°ΠΌΡΡ ΡΠ»ΠΎΠΆΠ½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΉ. ΠΡ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ Π΄ΠΎ ΡΠ°Π±ΠΎΡΡ Ρ infer. ΠΠ° ΠΊΡΡΡΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΊΠ°Π·Π°Π½ΠΎ: Π·Π°ΡΠ΅ΠΌ TS Π½ΡΠΆΠ΅Π½, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠΈΠΏΠ°ΠΌΠΈ, Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠ°ΠΌΠΈ, infer, ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ°ΠΌΠΈ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅. ΠΡΡΠ° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ², Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ°Π·Π±ΠΎΡ Π·Π°Π΄Π°Ρ ΠΈΠ· TypeScript Challenge. ΠΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ² ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΠΎΡΡΡ ΡΠ³Π»ΡΠ±ΠΈΡΡ Π½Π°Π²ΡΠΊΠΈ ΡΠ°Π±ΠΎΡΡ Ρ TypeScript. ΠΠΎΡΠ»Π΅ ΠΊΡΡΡΠ° Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ TS Π² ΡΠ΅Π°Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ .
Π§Π΅ΠΌΡ Π²Ρ Π½Π°ΡΡΠΈΡΠ΅ΡΡ:
ΠΠ°ΡΠ΅ΠΌ Π½ΡΠΆΠ΅Π½ TS ΠΈ ΡΠ΅ΠΌ ΠΎΠ½ Π»ΡΡΡΠ΅ JSDoc
Π’ΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ (number, string, boolean, null, undefined, any, void, never, unknown)
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ (ΠΎΠ±ΡΡΠ½ΡΡ ΠΈ ΡΡΡΠ΅Π»ΠΎΡΠ½ΡΡ )
Π Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ type ΠΈ interface
Union ΠΈ Intersection (Π΄Π»Ρ ΡΠΈΠΏΠΎΠ² ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ²)
ΠΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ (enum, const enum)
ΠΠΈΡΠ΅ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ
ΠΠ°ΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΏΠΎΠ²
Utility types (+Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Ρ Π΄ΠΎΠΏ. ΡΡΠΈΠ»ΠΈΡΠ°ΠΌΠΈ)
TypeScript Π² React (ΡΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², Ρ ΡΠΊΠΎΠ², ΡΠΎΠ±ΡΡΠΈΠΉ)
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΠΌΠΈΡΠΎΠ²
Tuple ΡΠΈΠΏ
Typeof, keyof, valueof
As const
Type guard
Assert exhaustiveness
Readonly
Mapped types
Conditional ΡΠΈΠΏΡ
ΠΠ½Π΄Π΅ΠΊΡΠ½ΡΠ΅ ΡΠΈΠΏΡ
Π¨Π°Π±Π»ΠΎΠ½Π½ΡΠ΅ ΡΡΡΠΎΠΊΠΎΠ²ΡΠ΅ ΡΠΈΠΏΡ
Π Π΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ
Satisfies
Declare
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ, svg, css ΡΠ°ΠΉΠ»ΠΎΠ²
ΠΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΉ
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ
ΠΠΎΠ½ΡΡΠ°Π½ΡΠ½ΡΠ΅ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ
Π Π°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ
Infer, NoInfer
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΎΠ²
Π Π΅ΡΠ°Π΅ΠΌ Π·Π°Π΄Π°ΡΠΈ TypeScript ΡΠ΅Π»Π»Π΅Π½Π΄ΠΆ
ΠΠ»Ρ ΠΊΠΎΠ³ΠΎ ΡΡΠΎΡ ΠΊΡΡΡ
ΠΠ»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌ Ρ TypeScript ΠΈ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ Π΄Π»Ρ ΡΠ΅Π³ΠΎ ΠΎΠ½ Π½ΡΠΆΠ΅Π½.
Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ Π΄Π»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ Π΅Π³ΠΎ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π² ΡΠ°Π±ΠΎΡΠ΅, Π½ΠΎ Ρ ΠΎΡΠ΅Ρ ΠΏΡΠΎΠΊΠ°ΡΠ°ΡΡ ΡΠ²ΠΎΠΈ Π·Π½Π°Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΡΠΌΠ΅ΡΡ ΠΏΠΈΡΠ°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΠΈΠΏΡ.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΊΡΡΡΠ°
ΠΠ½Π°ΠΊΠΎΠΌΠΈΠΌΡΡ Ρ Typescript
ΠΠΎΠ³ΡΡΠΆΠ°Π΅ΠΌΡΡ ΠΏΠΎΠ³Π»ΡΠ±ΠΆΠ΅
ΠΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ°
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ
ΠΡΠΎΡΠ΅Π΅
Infer
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ²
ΠΠΎΡΠΎΠ²ΠΈΠΌΡΡ ΠΊ Π±ΠΈΡΠ²Π΅ Ρ Π±ΠΎΡΡΠΎΠΌ
Π€ΠΈΠ½Π°Π»ΡΠ½ΡΠΉ Π±ΠΎΡΡ: TypeScript Challenges [easy]
Π€ΠΈΠ½Π°Π»ΡΠ½ΡΠΉ Π±ΠΎΡΡ: TypeScript Challenges [medium]
Π‘ΠΏΠΎΠΉΠ»Π΅Ρ:
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΊΡΡΡΠ° ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ:
ΠΠ½Π°ΠΊΠΎΠΌΠΈΠΌΡΡ Ρ Typescript
ΠΠ°ΡΠ΅ΠΌ Π½ΡΠΆΠ΅Π½ typescript? Π ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅?
Π’ΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
Type ΠΈ Interface
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΡΠ°ΠΊΡΠΈΠΊΠ° ΠΈΠ·ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ
Union (ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ)
Π Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ type ΠΈ interface
Intersection (ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΠ΅)
ΠΠΎΠ²ΡΠΎΡ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ
ΠΠΈΡΠ΅ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ
ΠΠ°ΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΏΠΎΠ² (as unknown)
Enum, const enum
Utility types: Partial, Required, Readonly
Utility types: Pick
Utility types: Omit
Utility types: ReturnType
ΠΡΠ°ΠΊΡΠΈΠΊΠ°: Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ TypeScript Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ
ΠΡΠ°ΠΊΡΠΈΠΊΠ°: Π’ΠΈΠΏΠΈΠ·ΠΈΡΡΠ΅ΠΌ React ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, Ρ ΡΠΊΠΈ, ΠΏΡΠΎΠΌΠΈΡΡ
ΠΡΠ°ΠΊΡΠΈΠΊΠ°: Π’ΠΈΠΏΠΈΠ·ΠΈΡΡΠ΅ΠΌ ΡΠΎΠ±ΡΡΠΈΡ (events)
ΠΡΠ°ΠΊΡΠΈΠΊΠ°: const enum
tsconfig.json
ΠΠΎΠ΄Π²ΠΎΠ΄ΠΈΠΌ ΡΠΈΠ½Π°Π»ΡΠ½ΡΠΉ ΠΈΡΠΎΠ³
ΠΠΎΠ³ΡΡΠΆΠ°Π΅ΠΌΡΡ ΠΏΠΎΠ³Π»ΡΠ±ΠΆΠ΅
Π§ΡΠΎ Π±ΡΠ΄Π΅Ρ Π² ΡΡΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅?
Π’ΠΈΠΏ never
Π’ΠΈΠΏ void
Π’ΠΈΠΏ unknown
Assert exhaustiveness
Type guard
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ as const
Readonly
Tuple
Keyof, typeof
Mapped types
ΠΠΎΠ΄Π²ΠΎΠ΄ΠΈΠΌ ΠΈΡΠΎΠ³ΠΈ
ΠΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ°
Π§ΡΠΎ Π±ΡΠ΄Π΅Ρ Π² ΡΡΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅?
ΠΠ°ΠΌΠ΅ΡΠΊΠΈ
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ°
Union ΡΠΈΠΏΡ Π² ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ΅
Π Π°Π·Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ΅
ΠΡΠ°ΠΊΡΠΈΠΊΠ° ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΎΠΊ
ΠΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ° Π΄Π»Ρ ΡΡΡΠ΅Π»ΠΎΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ
Π’Π΅ΡΡ ΠΏΠΎ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ°ΠΌ
Chrome Dev Tools
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ
Π ΠΊΠ°ΠΊΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π½ΡΠΆΠ½Ρ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ?
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΎΠ²
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ Π΄Π»Ρ type
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ-ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ Π΄Π»Ρ ΡΡΠ½ΠΊΡΠΈΠΉ
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ ΠΈ extends
ΠΠ°ΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΏΠΎΠ² Π΄Π»Ρ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΎΠ²
Typeof ΠΈ keyof Π² Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠ°Ρ
ΠΠ°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΎΠ² Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π°
ΠΠΎΠ½ΡΡΠ°Π½ΡΠ½ΡΠ΅ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ
ΠΡΠ°ΠΊΡΠΈΠΊΠ° Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΎΠ²
Π’Π΅ΡΡ ΠΏΠΎ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠ°ΠΌ
ΠΡΠΎΡΠ΅Π΅
ValueOf
Π£ΡΠ»ΠΎΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ
Π¨Π°Π±Π»ΠΎΠ½Π½ΡΠΉ ΡΡΡΠΎΠΊΠΎΠ²ΡΠΉ ΡΠΈΠΏ
ΠΠ½Π΄Π΅ΠΊΡΠ½ΡΠ΅ ΡΠΈΠΏΡ
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΠΌΠΈΡΠΎΠ²
Satisfies
Π Π΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ
Utility types: Extract, Exclude
Utility types+
ΠΠ°ΠΊ Π·Π°ΠΏΡΡΡΠΈΡΡ TS Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ
Π Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ .ts ΠΈ .d.ts (Reference path, reference type)
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ, ΡΡΠΈΠ»Π΅ΠΉ (css, scss, sass), ΡΡΠΈΡΡΠΎΠ² ΠΈ ΠΏΡΠΎΡΠ΅Π΅
Declare / Declare module
Π’ΠΈΠΏΠΈΠ·ΠΈΡΡΠ΅ΠΌ Window
Π’Π΅ΡΡ ΠΏΠΎ ΠΏΡΠΎΡΠΈΠΌ ΡΠ΅ΠΌΠ°ΠΌ
Infer
Π§ΡΠΎ ΡΡΠΎ ΠΈ Π³Π΄Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ?
Infer Π΄Π»Ρ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
Infer Π΄Π»Ρ ΡΡΡΠΎΠΊ
Infer Π΄Π»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
ΠΠΎΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ never Π² union ΡΠΈΠΏΠ°Ρ ?
Infer Π΄Π»Ρ ΡΡΠ½ΠΊΡΠΈΠΉ
Infer ΠΈ never
NoInfer ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ½ΡΠΉ ΡΠΈΠΏ
Π’Π΅ΡΡ ΠΏΠΎ infer
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ²
Π§ΡΠΎ Π±ΡΠ΄Π΅Ρ Π² ΡΡΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅
ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ Π΄ΠΎΡΡΡΠΏΠ° (public, private, protected, readonly)
ΠΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ² ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ Π² ΠΊΠ»Π°ΡΡΠ°Ρ
Implements ΠΈ Abstract
ΠΡΠ°ΠΊΡΠΈΠΊΠ°
Π’Π΅ΡΡ ΠΏΠΎ ΠΊΠ»Π°ΡΡΠ°ΠΌ
ΠΠΎΡΠΎΠ²ΠΈΠΌΡΡ ΠΊ Π±ΠΈΡΠ²Π΅ Ρ Π±ΠΎΡΡΠΎΠΌ
ΠΡΠΎ Namespace ΠΈ Decorators
ΠΠΎΠ²ΡΠΎΡΡΠ΅ΠΌ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½ΡΠΉ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»
Π’Π΅ΡΡ ΠΏΠΎ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½ΠΎΠΌΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ
Π€ΠΈΠ½Π°Π»ΡΠ½ΡΠΉ Π±ΠΎΡΡ: TypeScript Challenges [easy]
If
Push
Concat
Unshift
Length of Tuple
First of Array
Readonly
Pick
Tuple to Object
Exclude
Includes
Awaited
Parameters
Π€ΠΈΠ½Π°Π»ΡΠ½ΡΠΉ Π±ΠΎΡΡ: TypeScript Challenges [medium]
Π‘ΠΊΠΎΡΠΎ Π±ΡΠ΄Π΅Ρ
Π ΠΊΡΡΡ Π²Ρ ΠΎΠ΄ΡΡ:
106 ΡΡΠΎΠΊΠΎΠ²
11 ΡΠ°ΡΠΎΠ² 5 ΠΌΠΈΠ½ΡΡ Π²ΠΈΠ΄Π΅ΠΎ
48 ΡΠ΅ΡΡΠΎΠ²
ΠΠ²ΡΠΎΡ: Π ΠΎΠΌΠ°Π½ ΠΠ°ΠΊΡΠΈΠΌΠΎΠ²
Π£ΠΆΠ΅ Π±ΠΎΠ»ΡΡΠ΅ 8 Π»Π΅Ρ ΠΏΠΈΡΡ ΠΊΠΎΠ΄. Π Π°Π±ΠΎΡΠ°Π» ΠΊΠ°ΠΊ Π² ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΡ , ΡΠ°ΠΊ ΠΈ ΠΊΡΡΠΏΠ½ΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΡ .
Π‘ ΡΠ°Π΄ΠΎΡΡΡΡ Π³ΠΎΡΠΎΠ² Π΄Π΅Π»ΠΈΡΡΡΡ Ρ Π²Π°ΠΌΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅:
Π‘ΠΊΠ°ΡΠ°ΡΡ:
ΠΠ°Π·Π²Π°Π½ΠΈΠ΅: TypeScript Ρ 0 Π΄ΠΎ ΠΡΠΎ. Π Π΅ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ ΠΏΠΎ TS, ΡΠ°Π·Π±ΠΎΡ ΡΠ»ΠΎΠΆΠ½ΡΡ ΡΠ΅ΠΌ (2025)

ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅:
ΠΡΡΡ ΠΏΠΎ TypeScript: ΠΎΡ Π°Π·ΠΎΠ² Π΄ΠΎ ΡΠ°ΠΌΡΡ ΡΠ»ΠΎΠΆΠ½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΉ. ΠΡ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ Π΄ΠΎ ΡΠ°Π±ΠΎΡΡ Ρ infer. ΠΠ° ΠΊΡΡΡΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΊΠ°Π·Π°Π½ΠΎ: Π·Π°ΡΠ΅ΠΌ TS Π½ΡΠΆΠ΅Π½, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠΈΠΏΠ°ΠΌΠΈ, Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠ°ΠΌΠΈ, infer, ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ°ΠΌΠΈ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅. ΠΡΡΠ° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ², Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ°Π·Π±ΠΎΡ Π·Π°Π΄Π°Ρ ΠΈΠ· TypeScript Challenge. ΠΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ² ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΠΎΡΡΡ ΡΠ³Π»ΡΠ±ΠΈΡΡ Π½Π°Π²ΡΠΊΠΈ ΡΠ°Π±ΠΎΡΡ Ρ TypeScript. ΠΠΎΡΠ»Π΅ ΠΊΡΡΡΠ° Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ TS Π² ΡΠ΅Π°Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ .
Π§Π΅ΠΌΡ Π²Ρ Π½Π°ΡΡΠΈΡΠ΅ΡΡ:
ΠΠ°ΡΠ΅ΠΌ Π½ΡΠΆΠ΅Π½ TS ΠΈ ΡΠ΅ΠΌ ΠΎΠ½ Π»ΡΡΡΠ΅ JSDoc
Π’ΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ (number, string, boolean, null, undefined, any, void, never, unknown)
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ (ΠΎΠ±ΡΡΠ½ΡΡ ΠΈ ΡΡΡΠ΅Π»ΠΎΡΠ½ΡΡ )
Π Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ type ΠΈ interface
Union ΠΈ Intersection (Π΄Π»Ρ ΡΠΈΠΏΠΎΠ² ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ²)
ΠΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ (enum, const enum)
ΠΠΈΡΠ΅ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ
ΠΠ°ΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΏΠΎΠ²
Utility types (+Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Ρ Π΄ΠΎΠΏ. ΡΡΠΈΠ»ΠΈΡΠ°ΠΌΠΈ)
TypeScript Π² React (ΡΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², Ρ ΡΠΊΠΎΠ², ΡΠΎΠ±ΡΡΠΈΠΉ)
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΠΌΠΈΡΠΎΠ²
Tuple ΡΠΈΠΏ
Typeof, keyof, valueof
As const
Type guard
Assert exhaustiveness
Readonly
Mapped types
Conditional ΡΠΈΠΏΡ
ΠΠ½Π΄Π΅ΠΊΡΠ½ΡΠ΅ ΡΠΈΠΏΡ
Π¨Π°Π±Π»ΠΎΠ½Π½ΡΠ΅ ΡΡΡΠΎΠΊΠΎΠ²ΡΠ΅ ΡΠΈΠΏΡ
Π Π΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ
Satisfies
Declare
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ, svg, css ΡΠ°ΠΉΠ»ΠΎΠ²
ΠΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΉ
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ
ΠΠΎΠ½ΡΡΠ°Π½ΡΠ½ΡΠ΅ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ
Π Π°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ
Infer, NoInfer
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΎΠ²
Π Π΅ΡΠ°Π΅ΠΌ Π·Π°Π΄Π°ΡΠΈ TypeScript ΡΠ΅Π»Π»Π΅Π½Π΄ΠΆ
ΠΠ»Ρ ΠΊΠΎΠ³ΠΎ ΡΡΠΎΡ ΠΊΡΡΡ
ΠΠ»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌ Ρ TypeScript ΠΈ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ Π΄Π»Ρ ΡΠ΅Π³ΠΎ ΠΎΠ½ Π½ΡΠΆΠ΅Π½.
Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ Π΄Π»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ Π΅Π³ΠΎ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π² ΡΠ°Π±ΠΎΡΠ΅, Π½ΠΎ Ρ ΠΎΡΠ΅Ρ ΠΏΡΠΎΠΊΠ°ΡΠ°ΡΡ ΡΠ²ΠΎΠΈ Π·Π½Π°Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΡΠΌΠ΅ΡΡ ΠΏΠΈΡΠ°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΠΈΠΏΡ.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΊΡΡΡΠ°
ΠΠ½Π°ΠΊΠΎΠΌΠΈΠΌΡΡ Ρ Typescript
ΠΠΎΠ³ΡΡΠΆΠ°Π΅ΠΌΡΡ ΠΏΠΎΠ³Π»ΡΠ±ΠΆΠ΅
ΠΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ°
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ
ΠΡΠΎΡΠ΅Π΅
Infer
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ²
ΠΠΎΡΠΎΠ²ΠΈΠΌΡΡ ΠΊ Π±ΠΈΡΠ²Π΅ Ρ Π±ΠΎΡΡΠΎΠΌ
Π€ΠΈΠ½Π°Π»ΡΠ½ΡΠΉ Π±ΠΎΡΡ: TypeScript Challenges [easy]
Π€ΠΈΠ½Π°Π»ΡΠ½ΡΠΉ Π±ΠΎΡΡ: TypeScript Challenges [medium]
Π‘ΠΏΠΎΠΉΠ»Π΅Ρ:
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΊΡΡΡΠ° ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ:
ΠΠ½Π°ΠΊΠΎΠΌΠΈΠΌΡΡ Ρ Typescript
ΠΠ°ΡΠ΅ΠΌ Π½ΡΠΆΠ΅Π½ typescript? Π ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅?
Π’ΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
Type ΠΈ Interface
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΡΠ°ΠΊΡΠΈΠΊΠ° ΠΈΠ·ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ
Union (ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ)
Π Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ type ΠΈ interface
Intersection (ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΠ΅)
ΠΠΎΠ²ΡΠΎΡ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ
ΠΠΈΡΠ΅ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ
ΠΠ°ΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΏΠΎΠ² (as unknown)
Enum, const enum
Utility types: Partial, Required, Readonly
Utility types: Pick
Utility types: Omit
Utility types: ReturnType
ΠΡΠ°ΠΊΡΠΈΠΊΠ°: Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ TypeScript Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ
ΠΡΠ°ΠΊΡΠΈΠΊΠ°: Π’ΠΈΠΏΠΈΠ·ΠΈΡΡΠ΅ΠΌ React ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, Ρ ΡΠΊΠΈ, ΠΏΡΠΎΠΌΠΈΡΡ
ΠΡΠ°ΠΊΡΠΈΠΊΠ°: Π’ΠΈΠΏΠΈΠ·ΠΈΡΡΠ΅ΠΌ ΡΠΎΠ±ΡΡΠΈΡ (events)
ΠΡΠ°ΠΊΡΠΈΠΊΠ°: const enum
tsconfig.json
ΠΠΎΠ΄Π²ΠΎΠ΄ΠΈΠΌ ΡΠΈΠ½Π°Π»ΡΠ½ΡΠΉ ΠΈΡΠΎΠ³
ΠΠΎΠ³ΡΡΠΆΠ°Π΅ΠΌΡΡ ΠΏΠΎΠ³Π»ΡΠ±ΠΆΠ΅
Π§ΡΠΎ Π±ΡΠ΄Π΅Ρ Π² ΡΡΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅?
Π’ΠΈΠΏ never
Π’ΠΈΠΏ void
Π’ΠΈΠΏ unknown
Assert exhaustiveness
Type guard
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ as const
Readonly
Tuple
Keyof, typeof
Mapped types
ΠΠΎΠ΄Π²ΠΎΠ΄ΠΈΠΌ ΠΈΡΠΎΠ³ΠΈ
ΠΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ°
Π§ΡΠΎ Π±ΡΠ΄Π΅Ρ Π² ΡΡΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅?
ΠΠ°ΠΌΠ΅ΡΠΊΠΈ
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ°
Union ΡΠΈΠΏΡ Π² ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ΅
Π Π°Π·Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ΅
ΠΡΠ°ΠΊΡΠΈΠΊΠ° ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΎΠΊ
ΠΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ° Π΄Π»Ρ ΡΡΡΠ΅Π»ΠΎΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ
Π’Π΅ΡΡ ΠΏΠΎ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ°ΠΌ
Chrome Dev Tools
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ
Π ΠΊΠ°ΠΊΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π½ΡΠΆΠ½Ρ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ?
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΎΠ²
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ Π΄Π»Ρ type
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ-ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ Π΄Π»Ρ ΡΡΠ½ΠΊΡΠΈΠΉ
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ ΠΈ extends
ΠΠ°ΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΏΠΎΠ² Π΄Π»Ρ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΎΠ²
Typeof ΠΈ keyof Π² Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠ°Ρ
ΠΠ°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΎΠ² Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π°
ΠΠΎΠ½ΡΡΠ°Π½ΡΠ½ΡΠ΅ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ
ΠΡΠ°ΠΊΡΠΈΠΊΠ° Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΎΠ²
Π’Π΅ΡΡ ΠΏΠΎ Π΄ΠΆΠ΅Π½Π΅ΡΠΈΠΊΠ°ΠΌ
ΠΡΠΎΡΠ΅Π΅
ValueOf
Π£ΡΠ»ΠΎΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ
Π¨Π°Π±Π»ΠΎΠ½Π½ΡΠΉ ΡΡΡΠΎΠΊΠΎΠ²ΡΠΉ ΡΠΈΠΏ
ΠΠ½Π΄Π΅ΠΊΡΠ½ΡΠ΅ ΡΠΈΠΏΡ
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΠΌΠΈΡΠΎΠ²
Satisfies
Π Π΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ
Utility types: Extract, Exclude
Utility types+
ΠΠ°ΠΊ Π·Π°ΠΏΡΡΡΠΈΡΡ TS Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ
Π Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ .ts ΠΈ .d.ts (Reference path, reference type)
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ, ΡΡΠΈΠ»Π΅ΠΉ (css, scss, sass), ΡΡΠΈΡΡΠΎΠ² ΠΈ ΠΏΡΠΎΡΠ΅Π΅
Declare / Declare module
Π’ΠΈΠΏΠΈΠ·ΠΈΡΡΠ΅ΠΌ Window
Π’Π΅ΡΡ ΠΏΠΎ ΠΏΡΠΎΡΠΈΠΌ ΡΠ΅ΠΌΠ°ΠΌ
Infer
Π§ΡΠΎ ΡΡΠΎ ΠΈ Π³Π΄Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ?
Infer Π΄Π»Ρ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
Infer Π΄Π»Ρ ΡΡΡΠΎΠΊ
Infer Π΄Π»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
ΠΠΎΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ never Π² union ΡΠΈΠΏΠ°Ρ ?
Infer Π΄Π»Ρ ΡΡΠ½ΠΊΡΠΈΠΉ
Infer ΠΈ never
NoInfer ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ½ΡΠΉ ΡΠΈΠΏ
Π’Π΅ΡΡ ΠΏΠΎ infer
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ²
Π§ΡΠΎ Π±ΡΠ΄Π΅Ρ Π² ΡΡΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅
ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ Π΄ΠΎΡΡΡΠΏΠ° (public, private, protected, readonly)
ΠΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ² ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ
ΠΠΆΠ΅Π½Π΅ΡΠΈΠΊΠΈ Π² ΠΊΠ»Π°ΡΡΠ°Ρ
Implements ΠΈ Abstract
ΠΡΠ°ΠΊΡΠΈΠΊΠ°
Π’Π΅ΡΡ ΠΏΠΎ ΠΊΠ»Π°ΡΡΠ°ΠΌ
ΠΠΎΡΠΎΠ²ΠΈΠΌΡΡ ΠΊ Π±ΠΈΡΠ²Π΅ Ρ Π±ΠΎΡΡΠΎΠΌ
ΠΡΠΎ Namespace ΠΈ Decorators
ΠΠΎΠ²ΡΠΎΡΡΠ΅ΠΌ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½ΡΠΉ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»
Π’Π΅ΡΡ ΠΏΠΎ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½ΠΎΠΌΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ
Π€ΠΈΠ½Π°Π»ΡΠ½ΡΠΉ Π±ΠΎΡΡ: TypeScript Challenges [easy]
If
Push
Concat
Unshift
Length of Tuple
First of Array
Readonly
Pick
Tuple to Object
Exclude
Includes
Awaited
Parameters
Π€ΠΈΠ½Π°Π»ΡΠ½ΡΠΉ Π±ΠΎΡΡ: TypeScript Challenges [medium]
Π‘ΠΊΠΎΡΠΎ Π±ΡΠ΄Π΅Ρ
Π ΠΊΡΡΡ Π²Ρ ΠΎΠ΄ΡΡ:
106 ΡΡΠΎΠΊΠΎΠ²
11 ΡΠ°ΡΠΎΠ² 5 ΠΌΠΈΠ½ΡΡ Π²ΠΈΠ΄Π΅ΠΎ
48 ΡΠ΅ΡΡΠΎΠ²
ΠΠ²ΡΠΎΡ: Π ΠΎΠΌΠ°Π½ ΠΠ°ΠΊΡΠΈΠΌΠΎΠ²
Π£ΠΆΠ΅ Π±ΠΎΠ»ΡΡΠ΅ 8 Π»Π΅Ρ ΠΏΠΈΡΡ ΠΊΠΎΠ΄. Π Π°Π±ΠΎΡΠ°Π» ΠΊΠ°ΠΊ Π² ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΡ , ΡΠ°ΠΊ ΠΈ ΠΊΡΡΠΏΠ½ΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΡ .
Π‘ ΡΠ°Π΄ΠΎΡΡΡΡ Π³ΠΎΡΠΎΠ² Π΄Π΅Π»ΠΈΡΡΡΡ Ρ Π²Π°ΠΌΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅:
Π‘ΠΊΡΡΡΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π΄Π»Ρ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ!
Π‘ΠΊΠ°ΡΠ°ΡΡ:
ΠΠ»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΠΎΠΉΡΠΈ ΠΈΠ»ΠΈ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ.