Skip to content

Latest commit

 

History

History
124 lines (86 loc) · 2.41 KB

File metadata and controls

124 lines (86 loc) · 2.41 KB
  1. Execution Context & Call Stack

    • How JS code is created and executed
    • Global vs Function vs Block context
    • Why recursion works (and breaks)
  2. Hoisting (for real, not myths)

    • Creation phase vs execution phase
    • var vs let vs const
    • Temporal Dead Zone (TDZ)
  3. The Event Loop (critical)

    • Call stack
    • Web APIs
    • Task queue vs Microtask queue
    • Why promises run before setTimeout
  4. 'this' Binding Rules

    • Default binding
    • Implicit binding
    • Explicit binding (call, apply, bind)
    • new binding
    • Arrow function behavior
  5. Prototypes & Prototype Chain

    • proto vs prototype
    • How inheritance really works
    • Why classes are syntactic sugar
  6. Closures (deep mastery)

    • Lexical environment
    • Private state
    • Common memory leak patterns
  7. Memory Management & Garbage Collection

    • Stack vs Heap
    • References
    • Why leaks happen in JS apps
  8. Shallow vs Deep Copy

    • Object references
    • structuredClone
    • JSON pitfalls
    • Immutability patterns
  9. Advanced Array & Iteration

    • Iterators & iterable protocol
    • Generators (function*)
    • Custom iteration
  10. Advanced Async Patterns

    • Promise chaining
    • Error bubbling in async/await
    • Promise.all / race / any / allSettled
    • AbortController
  11. Race Conditions & Concurrency

    • Shared state problems
    • Async bugs that pass tests
    • Idempotent functions
  12. Browser Rendering Pipeline

    • DOM → CSSOM → Render Tree
    • Reflow vs repaint
    • Layout thrashing
  13. Web Storage & State

    • Cookies (flags, security)
    • localStorage / sessionStorage
    • IndexedDB
  14. Security Fundamentals (non-negotiable) // already know

    • XSS
    • CSRF
    • Same-Origin Policy
    • CORS
    • Trusted Types
  15. Modules at Scale

    • ESM loading behavior
    • Circular dependencies
    • Tree shaking
  16. Debugging Like a Pro

    • Call stack reading
    • Breakpoints (conditional, async)
    • Memory profiling
  17. Testing Fundamentals

    • Unit vs integration tests
    • Mocking
    • Property-based testing mindset
  18. Performance Optimization

    • Big-O in JS reality
    • Debounce vs throttle
    • Lazy loading
  19. Architecture Patterns

    • Functional vs OOP tradeoffs
    • Composition over inheritance
    • State management patterns
  20. Reading the Spec (selectively)

    • How to verify truth
    • Where JS behavior actually comes from