JavaScript Basics
ES6+ syntax, scope & closures, prototypes, event-driven asynchronous programming, and DOM manipulation APIs.
var vs let vs const, lexical scope, hoisting, and primitive vs object data types.
JS Syntax, Variables & Scope Mechanics
var vs let vs const, lexical scope, hoisting, and primitive vs object data types.
Execution Context lifecycle (Creation vs Execution), Lexical Environments, Scope Chains, `this` binding rules, and lexical closures.
Functions, Closures & Execution Contexts
V8 call stack mechanics, variable environment records, closure heap retention, and dynamic this resolution.
Prototypal delegation, [[Prototype]] internal slots, Object.create, property descriptors, and ES6 class desugaring.
Objects, Prototypes & Prototypal Inheritance
Prototype delegation, the prototype chain traversal algorithm, property descriptors, and V8 hidden class transitions.
JavaScript concurrency model, Call Stack, Macrotask vs Microtask queues, Promise state machines, and async/await generator desugaring.
Asynchronous JS - Event Loop, Promises & Async/Await
Event loop tick cycle, microtask queue draining, Promise execution invariants, and asynchronous coroutine evaluation.