Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

egghead.io

Advanced Static Types in TypeScript

via egghead.io

Overview

This course explores the capabilities of TypeScript’s type system and shows how to use advanced static types in practice. For example, you’ll learn how to write safer code by using non-nullable types and being explicit about null and undefined in the type system.
You’ll also see how the compiler analyzes control flow to determine the most specific type for a variable at any given location.
In addition to that, you’ll learn about the readonly modifier and the special object and never types. This course also inspects string enums, literal types, discriminated unions, and static types for the rest and spread operators.
Finally, you’ll see how to type dynamic property access using the keyof operator and how to create new types by applying transformation functions to existing ones.

Syllabus

  • Restrict null and undefined via Non-Nullable-Types in TypeScript
  • Understand TypeScript’s Control Flow Based Type Analysis
  • Define Custom Type Guard Functions in TypeScript
  • Make Properties and Index Signatures Readonly in TypeScript
  • Represent Non-Primitive Types with TypeScript’s object Type
  • Use TypeScript’s never Type for Exhaustiveness Checking
  • Overload a Function with TypeScript’s Overload Signatures
  • Collect Related Strings in a String Enum in TypeScript
  • Specify Exact Values with TypeScript’s Literal Types
  • Model Alternatives with Discriminated Union Types in TypeScript
  • Infer Types for Rest and Spread Properties in TypeScript
  • Query Properties with keyof and Lookup Types in TypeScript
  • Transform Existing Types Using Mapped Types in TypeScript

Taught by

Marius Schulz

Reviews

4.7 rating at egghead.io based on 424 ratings

Start your review of Advanced Static Types in TypeScript

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.