JavaScript Roadmap

JavaScript is the language of the web platform: it runs in every browser, and with Node.js it runs servers, desktops, and embedded devices. Its main use case is behavior: user events, network calls, state updates, and dynamic rendering, coordinated through a single-threaded event loop. Its depth is easy to underestimate: real expertise means the type system's sharp edges, the runtime's memory model, and true parallelism with workers and shared memory.

Status: Phases 1–2 (lessons 01–13) are fully written at the new standard: every example runnable, with expected output, contraexamples, and diagrams. Phases 3–7 are next; their pages still show outlines.
Scope: Study the topics in order. For every example, follow the study loop from lesson 01: type it by hand, predict the output, run it, break it on purpose, then fix it. Copy-paste teaches nothing.

JavaScript Study Progress:

0% Complete
# JavaScript Topic Description
PHASE 1: LANGUAGE FUNDAMENTALS
01 Running JavaScript: Your First Program The browser console, your first file with Node, reading errors, and the study loop for everything that follows.
02 JavaScript in HTML The <script> element, defer vs async vs module, and wiring code to the page with events.
03 Syntax, Values and Statements Tokens, literals, statements versus expressions, automatic semicolon insertion, and strict mode.
04 Variables, Scope and Types const and let, the temporal dead zone, block scope, and primitives versus references.
05 Operators, Coercion and Numbers Equality, truthiness, nullish coalescing, optional chaining, and IEEE-754 number pitfalls.
06 Strings, Templates and Text String methods, template literals, Unicode code points versus code units, and Intl.
07 Control Flow and Logic Branching, every loop form, for…of versus for…in, labeled breaks, and guard clauses.
08 Functions, Parameters and Closures Declarations, arrows, default/rest/spread parameters, closures, and pure functions.
PHASE 2: THE OBJECT MODEL
09 Objects, Properties and Prototypes Property descriptors, getters and setters, the prototype chain, and immutability.
10 Arrays, Iteration and Transformation Mutating versus non-mutating methods, map/filter/reduce, sort traps, and TypedArrays.
11 Map, Set and Weak Collections Map versus object keys, Set deduplication, weak collections, and the iteration protocol.
12 Classes, Inheritance and Private Fields Constructors, extends and super, static members, private fields, and this binding.
13 Modules and Code Organization ESM import/export, dynamic import(), the module pattern, and circular dependencies.
PHASE 3: RUNTIME, ERRORS AND THE PLATFORM
14 Errors, Failure Modes and Defensive Code Throwing and catching, custom Error subclasses, and validation that fails loudly.
15 The Runtime: Engine, Stack and Memory Parsing to JIT, the call stack, the heap and garbage collection, and hidden classes.
16 DOM, Events and Rendering Selecting elements, event delegation, forms, reflow versus repaint, and accessibility.
17 Storage, Network and Platform APIs fetch with AbortController, storage tiers, URL and History, and Web Components.
18 Running and Debugging JavaScript DevTools panels, breakpoints, watch expressions, source maps, and performance profiling.
PHASE 4: CONCURRENCY AND PARALLELISM
19 The Event Loop and the Concurrency Model One thread, task and microtask queues, render steps, and keeping the main thread free.
20 Callbacks, Promises and async/await Promise states, chaining, error propagation, the four combinators, and async/await.
21 Iterators, Generators and Async Iteration The iterator protocol, yield and yield*, lazy pipelines, and for await…of.
22 Web Workers and Shared Memory Dedicated workers, transferables, SharedArrayBuffer, Atomics, and true parallelism.
23 Performance and Scheduling Patterns Debounce and throttle, batching, scheduler APIs, and measuring with the performance API.
PHASE 5: ARCHITECTURE, QUALITY AND PITFALLS
24 Patterns and Architecture in Vanilla JS Module pattern, pub/sub, observable stores, and rendering from state.
25 Testing and Quality node:test, assertions, mocking, coverage, linting, and the TDD loop without a framework.
26 JavaScript Pitfalls and Contraexamples A catalog of wrong code and right code: coercion, this, loops, numbers, and mutation.
PHASE 6: PRACTICE AND DEMO
27 Lab Examples Numbered, commented demos grouped by phase; view the code or preview in the browser.
28 Study Projects Guided builds that combine chapters: a worker pool, a hash-router SPA, and more.
PHASE 7: REFERENCE
29 References Official documentation, the ECMAScript spec, proposals, compatibility data, and playgrounds.

JavaScript - Prep Quiz

This quiz works well on mobile and desktop. It includes multiple-choice and multi-select questions and requires Google sign-in.
When you complete this roadmap you should be able to read, write, and debug modern JavaScript, reason about the event loop, and use workers for real parallelism — without a framework. Continue with the Node.js, TypeScript, React, Vue, or Svelte roadmaps next.

Free References

For the full categorized table — specifications, guides, playgrounds, and tools — see the References page.