TS
💻 For developers

TypeScript

Types on top of JavaScript: fewer bugs, better autocomplete

What you'll build
📘A solid foundation
Practice in the browser
🎯Mini-projects
🎓Course certificate
📘 30 lessons1-2 evenings🎓 Advanced
🎯 Mission
Master TypeScript
+350XP
🏆CertificatePDF
🎓Course complete
Progress0 / 30 · 0%
Next up: What is TypeScript

Course program

01

Аннотации и вывод типов

0 / 5 lessons
  1. 01

    What is TypeScript

    JS + typesThe tsc compilerAdvantages⚡ +10
    ▶ Now
  2. 02

    Type inference

    Automatic typeAnnotation not always neededWhen to specify a type⚡ +10
    Open
  3. 03

    Primitives: `string`, `number`, `boolean`

    string stringsnumber numbersboolean logic⚡ +10
    Open
  4. 04

    `const` and `let` — the difference

    const doesn’t changelet changesWhen to use which⚡ +10
    🔒 Pro
  5. 05

    When to write a type annotation

    Inference is enoughFunction parametersPrecise vs redundant⚡ +10
    🔒 Pro
02

Типы функций

0 / 5 lessons
  1. 06

    Function parameter types

    Parameter annotationReturn typeThe void concept⚡ +10
    🔒 Pro
  2. 07

    Optional parameters (`?`)

    The ? signDefault valueChecking undefined⚡ +10
    🔒 Pro
  3. 08

    Function types and arrow functions

    The => arrow syntaxFunction typeA function in a variable⚡ +10
    🔒 Pro
  4. 09

    Passing a function as a parameter (callback)

    A callback functionA function type in a parametermap/filter example⚡ +10
    🔒 Pro
  5. 10

    Function types — mini project

    A set of functionsA chain of typesA real example⚡ +10
    🔒 Pro
03

Объекты, интерфейсы, type alias

0 / 5 lessons
  1. 11

    Object type

    Object literal typeField annotationType matching⚡ +10
    🔒 Pro
  2. 12

    `interface` — naming an object type

    interface syntaxReuseinterface in a function⚡ +10
    🔒 Pro
  3. 13

    `type` alias — a name for a type

    The type keywordinterface vs typeAlias for a primitive⚡ +10
    🔒 Pro
  4. 14

    Optional fields and `readonly`

    The ? field markerreadonly is immutableA partial object⚡ +10
    🔒 Pro
  5. 15

    Extending an interface (`extends`)

    The extends keywordInherited fieldsMini project⚡ +10
    🔒 Pro
04

Массивы, кортежи, enum

0 / 5 lessons
  1. 16

    Array types (`T[]` and `Array<T>`)

    The T[] notationArray<T> syntaxEmpty array type⚡ +10
    🔒 Pro
  2. 17

    Array methods — `map`, `filter`, `find`

    map transformfilterfind search⚡ +10
    🔒 Pro
  3. 18

    Tuples

    Tuple syntaxFixed lengthDestructuring⚡ +10
    🔒 Pro
  4. 19

    `enum` — a set of named constants

    enum syntaxNumeric enumString enum⚡ +10
    🔒 Pro
  5. 20

    Arrays and tuples — mini project

    Array of objectsArray of tuplesUsing reduce⚡ +10
    🔒 Pro
05

Union, литералы, сужение

0 / 5 lessons
  1. 21

    Union types (`|`)

    The | pipeSeveral typesUnion examples⚡ +10
    🔒 Pro
  2. 22

    Literal types

    A specific value typeString literalNumeric literal⚡ +10
    🔒 Pro
  3. 23

    Narrowing (via `typeof`)

    typeof checkNarrowing via ifType guard⚡ +10
    🔒 Pro
  4. 24

    Narrowing with the `in` operator

    The in operatorDiscriminator fieldUnion of objects⚡ +10
    🔒 Pro
  5. 25

    Unions and literals — mini project

    Notification systemUnion + narrowingA real example⚡ +10
    🔒 Pro
06

Дженерики и утилитные типы

0 / 5 lessons
  1. 26

    Generic functions (`<T>`)

    <T> syntaxType parameterReuse⚡ +10
    🔒 Pro
  2. 27

    Generic interfaces and types

    Generic interfaceGeneric type aliasAPI response⚡ +10
    🔒 Pro
  3. 28

    The `Partial`, `Required`, `Readonly` utility types

    Partial — optionalRequired — mandatoryReadonly⚡ +10
    🔒 Pro
  4. 29

    The `Pick`, `Omit`, `Record` utility types

    Pick — select fieldsOmit — exclude fieldsRecord — key-value⚡ +10
    🔒 Pro
  5. 30

    Generics — mini project (a Stack class)

    Generic Stackpush/pop operationsA typed collection
    Course complete
    🔒 Pro
TypeScript — online coding course