Course

JavaScript

JavaScript for dynamic UIs, browser APIs, async programming, modules, storage, debugging, classes, and testing fundamentals.

Start course

basic to advanced / 22 lessons

Log in to track your progress through this course.

About this course

Who it is for

This course is for learners who know basic HTML and CSS and want to make web pages interactive, and for developers from other languages who need modern JavaScript. No prior JavaScript is needed.

What it covers

You start by setting up a JavaScript environment, then cover syntax, variables, types, functions, arrays and objects. The runtime module explains scope, closures, classes, modern ES features and how the event loop works. In the browser you work with the DOM, events, modules and local storage. The async module covers promises, async and await, fetching data from APIs and error handling, and the final module covers debugging, testing fundamentals and an introduction to TypeScript.

How to use it

Each lesson has runnable examples, common mistakes, an exercise, a quiz and interview questions. Make sure closures and the event loop are clear before the async lessons, then move on to the React course. Try small experiments in the browser console as you read; it needs no setup and points to the exact line when something goes wrong.

Course roadmap

Your JavaScript journey

Milestones
5
Topics
22
Start here
  1. Milestone 1Language Basics6 topics
  2. Milestone 2Runtime Concepts5 topics
  3. Milestone 3Browser Programming4 topics
  4. Milestone 4Async and APIs4 topics
  5. Milestone 5Professional JavaScript3 topics
Finish line