JavaScript.
Modern JavaScript fundamentals, DOM manipulation, async patterns, Promises, fetch, and the ES module system.
Beginner
Start here — no prior experience needed
Setting Up JavaScript Development Environment
Install Node.js, configure VS Code with the right extensions, and run your first JavaScript program from the terminal.
Variables in JavaScript: var, let, and const
Understand the differences between var, let, and const — including hoisting, temporal dead zone, block scope, and when to use each one.
JavaScript Data Types
Explore JavaScript's seven primitive types and objects, understand typeof, type coercion, and learn how to check types reliably.
JavaScript Operators
Master JavaScript operators — arithmetic, comparison, logical, nullish coalescing, optional chaining, spread, and ternary — with real-world examples.
Control Flow in JavaScript
Learn how to direct your program's execution with if/else, switch, loops (for, while, for...of, for...in), break, continue, and labeled statements.
Functions in JavaScript
Master JavaScript functions — declarations, expressions, arrow functions, default and rest parameters, IIFEs, and first-class function patterns.
Working with Strings in JavaScript
Learn how to create, manipulate, and transform strings in JavaScript using template literals, built-in methods, and regular expressions.
Arrays in JavaScript
Learn JavaScript arrays — creation, functional methods like map/filter/reduce, destructuring, sorting, and common transformation patterns.
Objects in JavaScript
Learn JavaScript objects — literals, destructuring, spread/rest, Object utility methods, symbols, and real-world patterns like config merging and deep clone warnings.
DOM Manipulation in JavaScript
Learn how to select, create, modify, and remove DOM elements, handle events with delegation, and avoid common security pitfalls like XSS.
Introduction to JavaScript
Learn what JavaScript is, its history, how it powers the modern web, and why it's the most widely used programming language in the world.
Intermediate
For developers with core concepts down
Error Handling in JavaScript
Learn how to handle errors in JavaScript — try/catch/finally, built-in error types, custom error classes, rethrowing, and async error patterns.
Object-Oriented Programming in JavaScript
Learn ES6 classes, inheritance, private fields, static members, getters/setters, and the mixin pattern for composing behavior in JavaScript.
Prototypes and Prototype Chain in JavaScript
Understand how JavaScript's prototype chain works, prototype-based inheritance, and how ES6 classes relate to prototypes under the hood.
Closures in JavaScript
Learn what closures are, how lexical scoping works, and how to use closures for private state, memoization, and module patterns.
JavaScript Event Loop Explained
Understand how JavaScript's single-threaded event loop works, why microtasks run before macrotasks, and how to reason about async execution order.
Asynchronous JavaScript: Callbacks, Promises, and Async/Await
Master async JavaScript by understanding callbacks, Promises, and async/await — including error handling, parallel execution, and the full Promise API.
JavaScript Modules: ESM and CommonJS
Understand ES modules and CommonJS, their syntax differences, dynamic imports for code splitting, and how bundlers like Vite and webpack fit in.
Browser Web APIs in JavaScript
A practical guide to the most useful browser Web APIs — Fetch, localStorage, Intersection Observer, Web Workers, WebSockets, Geolocation, and the Clipboard API.
Testing JavaScript with Jest and Vitest
Learn how to write reliable unit tests in JavaScript using Jest and Vitest — from basic assertions to mocking, async tests, and code coverage.
JavaScript Interview Preparation: Top 35 Questions
35 essential JavaScript interview questions with detailed answers and code examples — closures, hoisting, event loop, prototypes, async/await, and more.
Advanced
Production-grade patterns for experienced engineers
JavaScript Design Patterns
Practical implementations of the most useful JavaScript design patterns — Module, Singleton, Observer, Factory, and Command — with real-world use cases.
JavaScript Performance Optimization
Practical JavaScript performance techniques — debounce, throttle, lazy loading, avoiding layout thrash, V8 optimization, memory leak prevention, and Web Workers.
JavaScript Security Best Practices
Learn how to protect JavaScript applications from XSS, CSRF, prototype pollution, insecure JWT handling, and other common web security vulnerabilities.