-
Variables & Scope:
var,let,const, block scope vs. function scope. -
Data Types: Primitive vs. reference types, type coercion,
typeof,NaN,nullvs.undefined. -
Operators: Arithmetic, comparison, logical, ternary, spread/rest, optional chaining (
?.). -
Control Flow:
if-else,switch,for,while,do-while,for...in,for...of. - Functions: Declarations, expressions, arrow functions, default/rest parameters, IIFE.
- Hoisting and Temporal Dead Zone.
- Closures and Lexical Scope.
-
this keyword & binding (
call,apply,bind). - Prototypes & Prototype Chain.
-
Objects & Arrays: Creation, destructuring, methods (
Object.keys,Object.assign, spread, rest). -
DOM Manipulation:
querySelector, events, event delegation. -
ES6+ Features: Template literals, modules (
import/export), classes,async/await,Promise.allSettled, optional chaining, nullish coalescing.
2. Advanced JavaScript Concepts
- Event Loop & Concurrency: Call stack, web APIs, microtasks vs. macrotasks.
-
Promises & Async/Await: Error handling with
try...catch. -
Error Handling:
throw,try...catch, custom errors. - Memory Management: Garbage collection basics.
-
Higher-Order Functions:
map,filter,reduce,forEach. - Generators & Iterators.
- Modules & Bundling: ES Modules, CommonJS, tree-shaking basics.
- Fetch API & AJAX: JSON parsing, handling HTTP errors.
3. Browser APIs and DOM
- DOM Tree Structure and traversal.
- Events: Bubbling, capturing, delegation.
- LocalStorage, SessionStorage, Cookies.
-
Timers:
setTimeout,setInterval,requestAnimationFrame. - Form Handling & Validation.
- Geolocation, Fetch, and other modern APIs.
4. Object-Oriented Programming in JS
- Classes & Constructors.
-
Inheritance:
extends,super. - Encapsulation: Private fields, getters, setters.
- Polymorphism and method overriding.
5. Functional Programming Basics
- Immutability.
- Pure Functions.
- Currying & Partial Application.
- Composition.
6. Data Structures & Algorithms in JS
- Arrays: Sorting, searching, two-pointer problems.
- Strings: Reversal, palindrome checks.
- Objects & Maps/Sets: Usage and performance differences.
- Recursion: Factorials, Fibonacci.
- Common Patterns: Sliding window, hashing, stack/queue usage.
7. Testing and Best Practices
-
Debugging Tools:
console, breakpoints in DevTools. - Code Quality: Linting (ESLint), formatting (Prettier).
- Unit Testing Basics: Jest or Mocha (optional for interviews).
- Performance Optimization: Debouncing, throttling.
8. Bonus Topics (for Full-Stack or Senior Roles)
- TypeScript basics (type annotations, interfaces).
- Build Tools: Webpack, Vite basics.
- React Basics: JSX, components, props, state.
- Security: XSS, CSRF, CORS basics.
Top comments (0)