Topics in this subject
32 topics
JavaScript
Mental Model
What JS is in one screen, ECMAScript vs JavaScript, engines & runtimes, JIT — the fast-path rules
✓Loading & Running
Script loading: defer vs async vs module 🎯, runtimes, the console snapshot trap
✓Syntax
Comments, Semicolons and ASI, Identifiers, keywords, naming, Strict mode, Literals, expressions, statements
✓Variables
var, let, const, Hoisting, The Temporal Dead Zone (TDZ), Scope, Reassignment vs mutation, immutability
✓Data Types
Primitives, Reference types, typeof, instanceof, Object.prototype.toString, Boxing and wrapper objects
✓Operators
Arithmetic, Assignment, Comparison, Logical & short-circuiting, Nullish coalescing ??
✓Spread, Rest & Default Params
One syntax (…) two opposite jobs, plus default parameters — the trio everyone confuses, made clear with a mental model, diagram, and gotchas.
✓Destructuring
Unpack arrays & objects into variables — positional vs by-key, defaults, renaming, nesting, swapping, and function-param destructuring.
✓Type Conversion & Coercion
The three abstract conversions, + is special, The infamous outputs, explained, Truthy and falsy, Explicit conversion (do this instead of relying on coercion) 🟢
✓Control Flow
Conditionals, Loops, break, continue, labels, Iteration method comparison 🎯, Recursion
✓Functions
Ways to define, Arrow vs regular — the differences that matter 🎯, Parameters: defaults, rest, destructuring, arguments, Higher-order functions, callbacks, pure/impure
✓Objects
Creating objects, Property descriptors, Prototypes & the prototype chain 🎯, Inheritance patterns, Key object methods
✓Arrays
Method reference, reduce deeply, Creating & copying, Holes & sparse arrays ⚠️, Time complexity 🎯
✓Strings
Common methods, Template literals & tagged templates, Unicode reality ⚠️ 🎯, Regex quick primer
✓Numbers & Math
IEEE-754 double precision 🎯, Special values, Safe integers & precision, BigInt, The Math object
✓Dates
Getting & formatting, Intl formatting 🟢, Temporal (the future) 🟢
✓Error Handling
Error types, Custom errors 🟢, Async errors ⚠️ 🎯
✓Asynchronous JavaScript
Why async exists, The event loop, precisely 🎯, Callbacks & callback hell, Promises, async / await
✓The DOM
Selecting, Creating, inserting, removing, Traversal & attributes, Events, bubbling, capturing, delegation 🎯, Forms & storage
✓Modules
CommonJS (Node legacy) 🟡, ES Modules (ESM) 🟢, Dynamic import, ESM vs CommonJS 🎯
✓Object-Oriented JavaScript
Static, private, and checks, Composition vs inheritance & mixins 🎯, SOLID in JS (pragmatic)
✓Advanced JavaScript
Execution context & the call stack, Memory, garbage collection, weak references, Symbols & well-known symbols, Iterators & generators, Tail calls
✓Browser APIs
Revision notes.
✓Node.js Basics
Core modules, HTTP server, Events (EventEmitter), Streams & buffers, process & timers
✓Design Patterns
Revision notes.
✓Security
Revision notes.
✓Performance
Debounce & throttle 🎯, Memory leaks — common causes, Loading & rendering
✓Best Practices
Revision notes.
✓Interview Preparation
Beginner, Intermediate, Advanced, Expert
✓Practice
Coding exercises (with solutions), Output prediction (predict, then check), Debugging (spot the bug), MCQs (answers below), Mini projects (build these)
✓Cheat Sheets
Truthy / Falsy, Equality quick table, Array methods — mutate vs return-new, String methods, Object methods
✓Appendix
ECMAScript version timeline, Common quirks (quick answers), Common beginner mistakes, Interview traps checklist, Glossary (A–Z, condensed)
No topics match that search.