What Topics Does The Modern JavaScript Tutorial Cover?

Updated

The Modern JavaScript Tutorial (javascript.info) covers JavaScript in three parts: the core language, browser APIs (Document, Events, Interfaces), and additional articles. It starts from scratch and moves to advanced concepts like OOP, so it fits beginners who want a structured path and intermediate developers filling specific gaps. The site states it concentrates on the language itself with minimal environment-specific notes in Part 1.

Part 1: The JavaScript language

This is the largest section and the one most learners come for. It is organized as a progression rather than an alphabetical reference.

Getting started

  • An Introduction to JavaScript
  • Manuals and specifications
  • Code editors
  • Developer console

JavaScript Fundamentals

  • Hello, world!
  • Code structure
  • The modern mode, "use strict"
  • Variables
  • Data types
  • Interaction: alert, prompt, confirm
  • Type Conversions
  • Basic operators, maths
  • Comparisons
  • Conditional branching: if, '?'
  • Logical operators
  • Nullish coalescing operator '??'
  • Loops: while and for
  • The "switch" statement
  • Functions
  • Function expressions
  • Arrow functions, the basics
  • JavaScript specials

Code quality

  • Debugging in the browser
  • Coding Style
  • Comments
  • Ninja code
  • Automated testing with Mocha
  • Polyfills and transpilers

Objects: the basics

  • Objects
  • Object references and copying
  • Garbage collection
  • Object methods, "this"
  • Constructor, operator "new"
  • Optional chaining '?.'
  • Symbol type
  • Object to primitive conversion

Data types

  • Methods of primitives
  • Numbers
  • Strings
  • Arrays
  • Array methods
  • Iterables
  • Map and Set
  • WeakMap and WeakSet
  • Object.keys, values, entries
  • Destructuring assignment
  • Date and time
  • JSON methods, toJSON

Advanced working with functions

  • Recursion and stack
  • Rest parameters and spread syntax
  • Variable scope, closure
  • The old "var"
  • Global object
  • Function object, NFE
  • The "new Function" syntax
  • Scheduling: setTimeout and setInterval
  • Decorators and forwarding, call/apply
  • Function binding
  • Arrow functions revisited

Object properties configuration

  • Property flags and descriptors
  • Property getters and setters

Prototypes, inheritance

  • Prototypal inheritance
  • F.prototype
  • Native prototypes
  • Prototype methods, objects without proto

Classes

  • Class basic syntax
  • Class inheritance
  • Static properties and methods
  • Private and protected properties and methods
  • Extending built-in classes
  • Class checking: "instanceof"
  • Mixins

Error handling

  • Error handling, "try...catch"
  • Custom errors, extending Error

Promises, async/await

  • Introduction: callbacks
  • Promise
  • Promises chaining
  • Error handling with promises
  • Promise API
  • Promisification
  • Microtasks
  • Async/await

Generators, advanced iteration

  • Generators
  • Async iteration and generators

Modules

  • Modules, introduction
  • Export and Import
  • Dynamic imports

Miscellaneous

  • Proxy and Reflect
  • Eval: run a code string
  • Currying
  • Reference Type

Part 2: Browser — Document, Events, Interfaces

This part moves from the language into the browser environment. It covers the DOM, event handling, and browser interfaces. If you only need language fundamentals, you can skip this part; if you plan to build web pages, it is the natural next step after Part 1.

Part 3: Additional articles

A smaller collection of extra material that sits outside the two main tracks.

How to decide if it fits your stage

Your situation Where to start
Never written JavaScript Part 1, from "An Introduction to JavaScript"
Know basics, weak on objects/closures Part 1, "Objects: the basics" and "Advanced working with functions"
Comfortable with syntax, shaky on async Part 1, "Promises, async/await"
Need DOM and events for page work Part 2
Want class-based and prototype patterns Part 1, "Prototypes, inheritance" and "Classes"

The stated goal is to go from scratch to advanced concepts like OOP, so the intended reading order is top to bottom within Part 1. The trade-off is depth over brevity: the material is described as simple but detailed, with examples and tasks, which means more reading time than a quick reference. If you need a fast lookup for a single method, a language reference may serve you better; if you want the concept explained with tasks to practice, this structure is the point.