CURRICULUM

Structured learning path. From primitives to asynchronous patterns.

Tier A: Core JavaScript (Must Master)

01

Variables & Scope

var, let, const, block vs function scope, global scope, lexical environment, hoisting, temporal dead zone

02

Data Types & Values

Primitives, objects, mutability, value vs reference, typeof, instanceof

03

Operators

Arithmetic, logical, comparison, assignment, ternary, nullish coalescing, optional chaining, delete, in, instanceof

04

Control Flow

if/else, switch, loops, break/continue, try/catch/finally, throw

05

Function Fundamentals

Function declarations vs expressions, parameters, return values, recursion

06

Object Literals & Property Access

Dot vs bracket notation, computed properties, shorthand syntax

07

Arrays & Essential Methods

map, filter, reduce, forEach, find, some, every, includes, indexOf, slice, splice (mutation vs non-mutation)

08

Strings & Essential Methods

slice, split, includes, indexOf, replace, trim, startsWith, endsWith, padStart, padEnd, repeat, charAt

09

Type Conversion & Equality

Implicit vs explicit coercion, ToPrimitive/ToNumber, == vs ===, truthy/falsy rules

10

Literals & Syntax Rules

Object {}, array [], function syntax, template literals, numeric literals, regex literals, strict vs sloppy mode

11

Callbacks

Continuation-passing style, error-first callbacks

12

Higher-Order Functions

Functions as values, callbacks, composition, currying basics

13

Scope Chain & Lexical Environment

Variable resolution, nested scopes, shadowing

14

Closures

Lexical scope retention, private state, memory implications

15

Execution Context & Call Stack

Global vs function execution context, creation vs execution phase, call stack behavior

16

`this` Binding Rules

Default, implicit, explicit, new binding, arrow function behavior

17

Function Methods (call / apply / bind)

Explicit this binding patterns, method borrowing

18

Arguments Object & Rest Parameters

arguments object, aliasing behavior, rest syntax, spread operator

19

Arrow Functions

Lexical this, syntax differences, limitations, use cases

20

Prototype Chain

Prototypal inheritance, [[Prototype]], Object.create, delegation model

21

Constructor Functions & new

new operator steps, instance creation, constructor behavior

22

Class Syntax (ES6+)

Class sugar over prototypes, extends, super, static members, private fields

23

Regular Expressions (Essential)

test, match, replace, search, basic groups and flags

24

Error Handling & Custom Errors

Built-in error types, custom errors, propagation, stack traces

25

Event Loop & Concurrency Model

Call stack, task queues, microtasks, run-to-completion semantics

26

Microtasks & queueMicrotask

Promise jobs, scheduling guarantees vs macrotasks

27

Promises

States, chaining, combinators, error propagation

28

Async / Await

Sequential vs parallel async code, try/catch error handling

29

ES Modules

import/export, named vs default exports, live bindings, module scope

Tier B: Advanced JavaScript (Learn -> Revisit)