Learn
Newsletter
Roadmaps
New
Search
⌘K
Toggle theme
Toggle theme
Toggle menu
JavaScript Roadmap
Introduction to JavaScript & History
Variables (var, let, const)
Operators
Loops (for, while, for...of, for...in)
Foundations
Setup & Running JS (Browser, Node.js)
Data Types & Type Conversion
Conditionals (if-else, switch)
Functions & Scope
Hoisting
Prototypes & Inheritance
Modules (import/export)
Core JavaScript
Closures
this Keyword
ES6 Classes
Execution Context & Call Stack
Memory Management & Garbage Collection
Functional Programming in JS
Advanced Concepts
Event Loop & Concurrency Model
Currying & Higher-Order Functions
Design Patterns in JavaScript
Callbacks
async/await
Fetch API & AJAX
Asynchronous JavaScript
Promises
EventEmitter (Node.js)
WebSockets
Document Object Model (DOM)
Event Handling
localStorage & sessionStorage
DOM & Browser APIs
Selecting & Manipulating Elements
Forms & Validation
Canvas & Web APIs
Template Literals
Spread & Rest Operators
Arrow Functions
Optional Chaining & Nullish Coalescing
Modern JavaScript (ES6+ Features)
Destructuring
Default & Named Parameters
Map, Set, WeakMap, WeakSet
npm & Yarn
Bundlers (Webpack, Vite, Parcel)
Testing Frameworks (Jest, Mocha, Cypress)
Tooling & Ecosystem
Babel & Transpilers
Linters & Formatters (ESLint, Prettier)
React.js Basics
Angular Basics
Next.js / Nuxt.js (SSR & SSG)
Frameworks & Libraries
Vue.js Basics
State Management (Redux, MobX, Pinia)
Node.js & Express.js
Todo App (Vanilla JS)
Chat App with WebSockets
Blog Platform with Node.js & Express
Projects
Weather App using Fetch API
E-commerce Shopping Cart
Portfolio Website with React/Next.js
Core JS Concept Q&A
Asynchronous JS Questions
System Design with JS (Front-end + Back-end)
Interview Preparation
Closures & Scopes Questions
DOM Manipulation Questions
DSA in JavaScript