
Discover how TypeScript extends JavaScript with static typing to catch errors before runtime. Contrast dynamic languages and duck typing, and see how static typing improves stability for browser object models.
Set expectations: TypeScript is an extension of JavaScript with new features and syntax. If you know JavaScript basics and AJAX, this 17-hour course will get you started with dynamic applications.
Choose a text editor with TypeScript support and use the TypeScript compiler; TypeScript is a JavaScript superset, and you can follow along using free editors like Visual Studio Code.
Set up node and npm, install TypeScript globally with npm, verify with tsc --version, and use a free editor like Visual Studio Code.
Learn to create a TypeScript project in a code editor, configure tsconfig, write basic TypeScript, compile to JavaScript, and enable watch mode for automatic compilation.
Explore ECMAScript's new features, including template strings and spread, and data structures, with coding challenges, before diving into TypeScript.
Explore ECMAScript 2015, aka ES6, detailing its history and core features such as let and const, improved functions, classes, template strings, and new array and object methods.
Explore var, let, and const in JavaScript, including var's scope and let and const block scope. Learn that const cannot be reassigned, but its arrays and objects can be modified.
Explore template strings in es6 and learn to interpolate variables for dynamic, multi-line text. See practical examples with name, age, profession, and gender.
Explore the spread operator in TypeScript, using three dots to spread and concatenate arrays, including arrays within arrays. Learn how to expand data structures and manage nested arrays effectively.
Explore the map object in JavaScript (ES6) as a flexible key-value store, compare maps with regular objects, and learn to set, get, has, delete, and iterate over map entries.
Explore the set data structure in JavaScript, which stores unique values in insertion order and ignores duplicates. Learn to use add, has, remove, clear, and iterate with forEach and size.
Learn how the for..of loop iterates over arrays, strings, and maps. Assigns each item to a temporary variable and demonstrates accessing keys, values, and entries.
Practice a for-of loop on a languages array to print specific values, access index 1, and navigate nested objects, tackling looping challenges to strengthen JavaScript fundamentals.
Explore default parameters in functions and enhanced object literals in TypeScript, showing how default values are applied when arguments are omitted and how concise function syntax works.
Learn arrow function syntax by converting a normal function to the shorter => form, using optional parentheses for a single parameter and applying it to non-method functions.
Explore how this scope behaves in object methods and migrate from traditional functions to arrow functions to preserve this during forEach iterations of hobbies.
Explore destructuring assignment to retrieve array values with square brackets, map elements to variables, skip items with commas (leaving undefined for missing values), and apply to objects.
Learn how generator functions enable pausing and resuming execution with an asterisk syntax, yielding values through next calls, and creating iterators in JavaScript.
Explore how to define and use classes in TypeScript, including class declaration and expression, constructors, inheritance with extends and super, and getters and setters.
Explore promises in JavaScript, learn how resolve and reject control flow with then, catch, and finally, and fetch data from a server using a promise-based pattern.
Learn how to load data with fetch in TypeScript by calling the json placeholder users endpoint, converting the response to json, and extracting user data.
Explore TypeScript fundamentals, including type syntax and annotations, and how compiler and language service catch errors and transform code. Understand how TypeScript addresses JavaScript's lack of types and module scope.
Explore how TypeScript enforces static type checking with type annotations, type inference, and primitive types like string, number, boolean, and any, and learn to define typed arrays and safe variables.
Explore TypeScript basic types 2, including tuples, fixed-type arrays, strings, numbers, booleans, and enums, and learn to log values to the console and compile with tsc.
Explore advanced types in TypeScript, including union types, type guards, and type aliases, plus undefined, null, and the spread operator, with compile-time type narrowing and safe usage.
Explore how TypeScript return type annotations enforce string results for functions and how to resolve errors like 'type number is not assignable to type string' by converting numbers to strings.
Learn how to use anonymous functions in TypeScript, apply type inference, and manage optional and default parameters with proper signatures.
Define default parameters in TypeScript functions to assign values when arguments are missing. Use rest parameters with three dots to gather extra arguments into a string array.
Explore how TypeScript adds strongly typed development to JavaScript, with basic types and function signatures, and examine interfaces, classes, constructors, modifiers, inheritance, abstract classes, closures, and ES6 design patterns.
Learn how interfaces in TypeScript define a custom type with required properties, how an object implements the interface, and how optional and read-only properties function for type checking.
Learn how to define and use classes in TypeScript, including properties, methods, and the this keyword, create and print class instances, and compile to JavaScript for cross-browser compatibility.
Learn how interfaces describe common behaviors for a group of classes and how to implement those interfaces, enabling code that works with any class that has a print function.
Learn how a class constructor accepts parameters to initialize id and name during instantiation, set properties with this, and retrieve them with a function to get the name.
Explore TypeScript class modifiers including public, private, and protected, with constructor shorthand, automatic properties, and read-only and accessors, plus using static properties and methods.
Explore TypeScript class and interface inheritance for beginners, implementing base interfaces, extending base classes, and using super to initialize constructors.
Explore how protected class members in TypeScript enable inheritance access to certain properties and methods, while still restricting access from outside the class hierarchy.
Explore abstract classes in TypeScript, define an abstract base with shared properties, implement derived classes with overridden getDetails, and reuse code through inheritance, polymorphism, and encapsulation.
Explore generics in TypeScript to write type-safe, reusable components with generic functions, interfaces, and classes. Learn to capture and reuse type information with the identity function and type constraints.
Explore how to define generic interfaces and generic classes in TypeScript, using interface<T> and class<T> with angle bracket syntax, and methods returning type T.
Explore how TypeScript enums map human readable names to numeric values, using a door state example (open, closed, etc.) and accessing values like State.open in code.
Explore how TypeScript modules isolate code in their own scope, use export and import declarations, and how top level imports classify files as modules loaded by module loaders with dependencies.
Learn how to import and export modules in TypeScript, alias with as, import multiple classes from a single module, and use asterisk imports from a relative path.
Explore TypeScript namespaces to avoid name conflicts in large projects and with external libraries, using export and full namespace references to access classes with identical names.
Learn how tsconfig.json marks the root of a TypeScript project, configures compiler options, and controls include, exclude, and files for JavaScript output.
Most People know TypeScript from Angular 5+. It's the Language you have to use there, right?
It's more than that!
Creating great web applications requires great JavaScript code. TypeScript helps you create great JavaScript code. In this course, Getting Started with TypeScript, you'll learn how to create browser applications faster and with fewer errors using a powerful and fun programming language. First, you'll learn how to configure TypeScript projects. Next, you'll explore how to create and use your own types. Finally, you'll discover how to get strong typing support for just about any JavaScript library you can imagine. When you're finished with this course, you'll have a foundational understanding of TypeScript's most important features, as well as the skills you need to begin building client-side web applications and NodeJS applications with TypeScript.
Practice what you Learn
Watching Videos is a great Way to Learn. And to a lot of Students, it's the best Way. If you also want to practice the Things you learn, this Course offers you Exercises (and Solutions) in many of the Course Modules.
So much Content!
I'm not a Fan of these Courses which teach you the Basics and then leave you alone. In this Course you'll get insights into: