Learn
🤖 AI Hub 📰 News 📖 Dictionary 🧰 Resources
Grow
💼 Jobs 🚀 Community 🏆 Challenges
Explore by Stage
🌑 Zero 📚 Learn 🔧 Practice 🏗 Build 🚀 Launch 💰 Earn
Account
Login Sign Up
🏗️HTML 🎨CSS ⚡JavaScript 🐙Git & GitHub ⚛️React Soon 📘TypeScript Soon 🐍Python 🗄️Database & SQL Soon 🌐Web Development Soon ☁️Cloud & DevOps Soon 🤖AI & ML Soon 📄Resume Prep Soon 🎤Interview Prep Soon 💼Freelancing Soon 🚀SaaS & Side Projects Soon 🤖Automation Soon
⚡

JavaScript

Make websites interactive: from variables and functions to the DOM, APIs and real projects.

All (36) Beginner (14) Intermediate (10) Advanced (12)

🌱 Beginner 14 lessons

Start here. No experience needed.

Lesson 1
What is JavaScript? — The Language That Makes Websites Interactive
JavaScript brings web pages to life. Learn what JavaScript is, what it can do, and run your first script in un...
Lesson 2
JavaScript Variables — var, let, and const Explained
Variables store data in JavaScript. Learn the difference between var, let, and const, when to use each, and ho...
Lesson 3
JavaScript Data Types — Strings, Numbers, Booleans and More
JavaScript has 8 data types. Learn strings, numbers, booleans, null, undefined, and how to check what type a v...
Lesson 4
JavaScript Operators — Arithmetic, Comparison & Logical
Operators are the building blocks of logic in JavaScript. Learn arithmetic, comparison, logical, and assignmen...
Lesson 5
Strings: Working with Text and Template Literals
Learn to create, join, search, cut and format text in JavaScript with template literals and string methods, an...
Lesson 6
Numbers and Math: Bills, Discounts and Rounding
Learn how JavaScript handles numbers, rounding, random values and text to number conversion, and build a resta...
Lesson 7
JavaScript Conditionals — if, else, and switch
Conditionals let your code make decisions. Learn if, else if, else, switch statements, and build real features...
Lesson 8
JavaScript Loops — for, while, and for...of
Loops repeat a block of code. Learn for, while, for...of, and for...in loops with real examples like rendering...
Lesson 9
JavaScript Functions — Writing Reusable Code Blocks
Functions let you write code once and reuse it anywhere. Learn function declarations, arrow functions, paramet...
Lesson 10
JavaScript Arrays — Working with Lists of Data
Arrays store multiple values in one variable. Learn how to create, access, and manipulate arrays using push, p...
Lesson 11
JavaScript Objects — Key-Value Pairs and Methods
Objects store related data together in key-value pairs. Learn how to create, access, update, and work with obj...
Lesson 12
DOM Manipulation — Changing HTML with JavaScript
The DOM is the live representation of your HTML. Learn how to select, modify, create, and delete elements usin...
Lesson 13
Events: Responding to Clicks, Typing and Forms
Make web pages react to clicks, typing, keys and form submissions with addEventListener, and build a canteen f...
Lesson 14
Debugging: Finding and Fixing Bugs with the Console and DevTools
Learn to read JavaScript error messages, inspect values with console.log, typeof and console.table, and pause ...

⚙️ Intermediate 10 lessons

You know the basics. Build real skills.

Lesson 15
Array Methods: map, filter, reduce, find and sort
Use forEach, map, filter, reduce, find, some, every and sort to work with lists in JavaScript, and build a gro...
Lesson 16
Scope and Hoisting: Where Your Variables Live
Understand global, function and block scope, why let and const replace var, shadowing, hoisting and the tempor...
Lesson 17
Arrow Functions and Closures
Write short arrow functions and understand closures: functions that remember. Build a clinic token machine wit...
Lesson 18
Destructuring, Spread and Rest: Cleaner Code with Objects and Arrays
Unpack arrays and objects with destructuring, copy and merge them with spread, collect values with rest, and h...
Lesson 19
Dates and Time: Countdowns, Ages and Formatting
Create and change dates, find the days between two dates, format dates the Indian way and handle IST and UTC. ...
Lesson 20
JSON: Sending and Saving Data as Text
Learn what JSON is and why servers use it. Turn objects into text with JSON.stringify, read server data with J...
Lesson 21
Error Handling: try, catch and Friendly Error Messages
Catch errors with try, catch and finally, throw your own errors, create a custom PaymentError class and show f...
Lesson 22
Form Validation with JavaScript: Instant, Friendly Feedback
Validate a sign-up form with JavaScript: handle submit, check email, Indian mobile numbers and passwords, show...
Lesson 23
localStorage: Remembering Data in the Browser
Save data in the browser with localStorage so it stays after the page is closed. Store arrays with JSON, read ...
Lesson 24
Modules: Splitting Code into Files with import and export
Split a shop app into small files with JavaScript modules. Learn named and default exports, import with as, sc...

🚀 Advanced 12 lessons

Go deeper, write professional code and build projects.

Lesson 25
Callbacks and Promises: Waiting Without Freezing the Page
Learn how JavaScript waits for slow tasks without freezing the page. Simulate a food delivery order with setTi...
Lesson 26
async and await: Asynchronous Code That Reads Like a Story
Write asynchronous JavaScript that reads top to bottom with async and await. Handle errors with try and catch,...
Lesson 27
Fetch API: Getting Live Data from the Internet
Use fetch to show live weather for Indian cities and load posts from a practice API. Handle status codes, load...
Lesson 28
The Event Loop: How JavaScript Does One Thing at a Time
See how JavaScript runs one thing at a time with the call stack, Web APIs, the task queue and the microtask qu...
Lesson 29
Classes and Objects: Building a Bank Account in JavaScript
Build a bank account with JavaScript classes: constructors, methods, getters and setters, static members and p...
Lesson 30
The this Keyword Explained Simply
Understand the JavaScript this keyword with one simple idea: like the word I, it means whoever is calling. Fix...
Lesson 31
Regular Expressions: Checking PIN Codes, Mobile Numbers and More
Learn JavaScript regular expressions by validating a KYC form: PIN codes, mobile numbers, PAN and vehicle numb...
Lesson 32
Debounce and Throttle: Smarter Search Boxes and Scroll Events
Stop sending a request on every key press. Write your own debounce and throttle functions with setTimeout and ...
Lesson 33
Project: Build a Study Planner To-do App
Build a study planner to-do app step by step with plain JavaScript: add, tick, delete and filter tasks, count ...
Lesson 34
Project: Build a Quiz App with Score and Timer
Build a general knowledge quiz app step by step: one question at a time, right and wrong highlights, a score, ...
Lesson 35
Project: Build a Weather App with a Live API
Build a live weather app step by step with fetch and async/await: search a city, show the current weather and ...
Lesson 36
Project: Build a Monthly Expense Tracker
Build a monthly expense tracker step by step: add and delete expenses, total them with reduce, format rupees w...