Flagship
js
JavaScript
The core language, async, the browser and Node
30 topics 6 sections Node 24 beginner → advanced
recommended path JavaScript foundations for TypeScript
milestone 1 of 4 0 of 24 done
Continue: JavaScript fundamentals →
See the whole map All beginner intermediate advanced
show All Unread Read
01 · Core language
23 topics Array methods Choose array methods by return value and mutation behavior, without getting caught by sorting, sparse arrays, shallow copies, or async callbacks. beginner 16 min Classes Learn how JavaScript classes construct objects, share prototype methods, define fields, and inherit, including the initialization traps that break real code. intermediate 12 min Data types Understand JavaScript's seven primitive types, objects, runtime type checks, and coercion without losing valid 0, false, or empty strings at boundaries. beginner 16 min Date JavaScript's mutable representation of an instant, with precise rules for parsing, UTC and local views, formatting, arithmetic, and validation. intermediate 15 min Destructuring assignment Destructuring binds values from iterables and object properties, with precise rules for defaults, nesting, rest elements, and shallow copies. intermediate 17 min Error handling How JavaScript exceptions cross synchronous and Promise boundaries, with precise recovery, cleanup, wrapping, and aggregation. intermediate 15 min Iterators and generators Unify traversal with iteration protocols, produce values on demand with generators, and handle one-shot state, messaging, and early cleanup. intermediate 14 min JavaScript fundamentals Understand JavaScript declarations, values, coercion, comparison, and control flow through the model behind ordinary code. beginner 16 min JSON Understand the boundary between JSON text and JavaScript values, use parsing and serialization hooks correctly, and catch precision, type, and security traps. beginner 16 min Map and Set JavaScript's keyed and unique-value collections, including equality, insertion order, modern set operations, and weak-collection boundaries. intermediate 16 min Math object Math supplies rounding, powers, roots, trigonometry, extrema, and pseudorandom values; explicit numeric contracts prevent precision and security bugs. beginner 16 min Memory management Use reachability to understand garbage collection, remove accidental retention, bound caches, and use weak collections and finalizers safely. intermediate 17 min Modern JavaScript features A practical map of JavaScript from ES2015 onward: bindings, concise data operations, iteration, async flow, and compatibility boundaries. intermediate 12 min Modules JavaScript modules define dependency boundaries; master static imports, live bindings, dynamic imports, cycles, and Node 24 resolution. intermediate 19 min Object static methods Use JavaScript Object methods precisely for own-property enumeration, shallow copying, descriptors, and integrity levels. intermediate 14 min Objects and prototypes Understand object identity, own properties, descriptors, prototype lookup, and the mechanics behind constructors and classes in JavaScript. intermediate 16 min Private fields Use # private fields, methods, and brand checks to encapsulate class state without breaking inheritance, proxies, serialization, or callbacks. intermediate 14 min Proxy and Reflect Proxy intercepts fundamental object operations while Reflect preserves their default semantics; use traps, receivers, and invariants without breaking objects. advanced 14 min Regular expressions Match, capture, and transform text with JavaScript regular expressions while handling Unicode, stateful matching, dynamic input, and backtracking safely. intermediate 18 min String methods Understand immutable strings, UTF-16 indexing, search, replacement, and locale rules so JavaScript handles real text boundaries correctly. intermediate 16 min Symbol Symbols are primitive values with unique identity, used for collision-free object extensions and built-in JavaScript protocol hooks. intermediate 15 min Typed arrays and ArrayBuffer Typed arrays read compact binary data through ArrayBuffer; understand views, byte order, copies, and resizing to parse protocols and files correctly. intermediate 15 min WeakMap and WeakSet Attach metadata and membership to object lifetimes while understanding reachability, identity, non-enumerability, and garbage collection. intermediate 17 min
02 · Functions and scope
6 topics Arrow functions Arrow functions create compact function expressions and inherit this and related bindings; learn their return rules, call semantics, and callback identity. intermediate 18 min call, apply and bind Distinguish call, apply, and bind by timing, argument form, and binding behavior, including callback identity, array-like inputs, and construction. intermediate 14 min Closures Closures let functions keep access to their lexical environment; understand shared bindings, loop variables, and callback lifetimes to use them reliably. intermediate 18 min Currying and function composition Currying fixes arguments in stages; function composition connects unary transformations while making arity, this, and async boundaries explicit. intermediate 17 min Functions Understand function objects, declaration timing, parameter binding, returns, and higher-order calls to write clear, testable JavaScript contracts. beginner 18 min this binding JavaScript chooses this from the call form; understand methods, explicit binding, arrows, and construction to keep callbacks and refactors correct. intermediate 16 min