beginner javascriptfrontend

JavaScript Fundamentals

Learn JavaScript from scratch with hands-on projects and real-world examples

By Avinash Jha

Curriculum

  1. 1 Introduction to JavaScript 7 lessons

    Understand what JavaScript is, where it runs, and write your first script.

    1. What is JavaScript? Reading 10 min
    2. History of JavaScript Reading 10 min
    3. How JavaScript Runs Reading 10 min
    4. Setting Up Your Environment Reading 10 min
    5. Your First Script Reading 10 min
    6. JavaScript Syntax Basics Reading 10 min
    7. Module Knowledge Check Quiz 10 min
  2. 2 Variables and Data Types 13 lessons

    Declare variables and work with JavaScript's primitive and reference types.

    1. var, let, and const Reading 10 min
    2. Differences Between var, let, and const Reading 10 min
    3. Primitive Types Overview Reading 10 min
    4. Strings Reading 10 min
    5. Numbers Reading 10 min
    6. Booleans Reading 10 min
    7. null and undefined Reading 10 min
    8. Symbol Reading 10 min
    9. BigInt Reading 10 min
    10. Basic Objects and Arrays Reading 10 min
    11. Type Conversion and Coercion Reading 10 min
    12. Core Knowledge Check Quiz 10 min
    13. Applied Knowledge Check Quiz 10 min
  3. 3 Operators 6 lessons

    Use arithmetic, logical, bitwise, and comparison operators in JavaScript.

    1. Arithmetic Operators Reading 10 min
    2. Logical Operators Reading 10 min
    3. Bitwise Operators Reading 10 min
    4. Comparison Operators Reading 10 min
    5. == vs === Reading 10 min
    6. Module Knowledge Check Quiz 10 min
  4. 4 Control Flow 6 lessons

    Control the execution of your programs with loops and branching statements.

    1. if / else Reading 10 min
    2. for Loops Reading 10 min
    3. while Loops Reading 10 min
    4. switch Statement Reading 10 min
    5. break and continue Reading 10 min
    6. Module Knowledge Check Quiz 10 min
  5. 5 Conditionals 6 lessons

    Write expressive conditional logic with operators and modern syntax.

    1. Ternary Operator Reading 10 min
    2. Truthy and Falsy Values Reading 10 min
    3. Logical Short-Circuiting Reading 10 min
    4. Nullish Coalescing Reading 10 min
    5. Optional Chaining Reading 10 min
    6. Module Knowledge Check Quiz 10 min
  6. 6 Functions 6 lessons

    Define and use functions, the core building block of JavaScript.

    1. Declarations vs Expressions Reading 10 min
    2. Parameters and Return Values Reading 10 min
    3. Default Parameters Reading 10 min
    4. Rest Parameters Reading 10 min
    5. Immediately Invoked Function Expressions (IIFE) Reading 10 min
    6. Module Knowledge Check Quiz 10 min
  7. 7 Scope and Closures 11 lessons

    Understand scope, hoisting, closures, and higher-order functions.

    1. Global vs Function Scope Reading 10 min
    2. Block Scope Reading 10 min
    3. Hoisting Reading 10 min
    4. Hoisting Knowledge Check Quiz 10 min
    5. Closures Reading 10 min
    6. Closure Scope Reading 10 min
    7. Closure Knowledge Check Quiz 10 min
    8. Higher-Order Functions Reading 10 min
    9. Functions as Arguments Reading 10 min
    10. Functions as Return Values Reading 10 min
    11. Module Knowledge Check Quiz 15 min
  8. 8 Arrays 16 lessons

    Store collections of data and transform them with built-in array methods.

    1. Array Basics Reading 10 min
    2. forEach Reading 10 min
    3. map Reading 10 min
    4. filter Reading 10 min
    5. reduce Reading 10 min
    6. find Reading 10 min
    7. some and every Reading 10 min
    8. slice and splice Reading 10 min
    9. sort and reverse Reading 10 min
    10. flat and flatMap Reading 10 min
    11. includes Reading 10 min
    12. entries Reading 10 min
    13. Multi-dimensional Arrays Reading 10 min
    14. Core Knowledge Check Quiz 10 min
    15. Array Methods Knowledge Check Quiz 15 min
    16. Applied Knowledge Check Quiz 15 min
  9. 9 Objects 7 lessons

    Work with key-value data using objects, their methods, and JSON.

    1. Object Basics Reading 10 min
    2. Properties and Methods Reading 10 min
    3. Object.keys, values, and entries Reading 10 min
    4. Working with JSON Reading 10 min
    5. Object References and Copying Reading 12 min
    6. Core Knowledge Check Quiz 10 min
    7. Applied Knowledge Check Quiz 15 min
  10. 10 The this Keyword 8 lessons

    Master how this is determined and how to control execution context.

    1. Understanding this Reading 10 min
    2. Context Binding Reading 10 min
    3. Arrow Functions and this Reading 10 min
    4. bind() Reading 10 min
    5. call() Reading 10 min
    6. apply() Reading 10 min
    7. Core Knowledge Check Quiz 10 min
    8. Applied Knowledge Check Quiz 15 min
  11. 11 ES6+ Features 11 lessons

    Write modern JavaScript with arrow functions, destructuring, and more.

    1. What Are ES6+ Features? Reading 10 min
    2. Arrow Functions Reading 10 min
    3. Template Literals Reading 10 min
    4. Destructuring Reading 10 min
    5. Spread Operator Reading 10 min
    6. Rest Operator Reading 10 min
    7. Enhanced Object Literals Reading 10 min
    8. Map and Set Reading 12 min
    9. Modern Operators Reading 10 min
    10. Core Knowledge Check Quiz 10 min
    11. Applied Knowledge Check Quiz 15 min
  12. 12 Modules 9 lessons

    Organize code into reusable modules using import and export.

    1. Introduction to Modules Reading 10 min
    2. import / export Syntax Reading 10 min
    3. Default vs Named Exports Reading 10 min
    4. Writing Modular Code Reading 10 min
    5. Modules in the Browser and Node.js Reading 12 min
    6. Re-exports and Barrel Files Reading 10 min
    7. Side Effects and Dynamic Imports Reading 12 min
    8. Core Knowledge Check Quiz 10 min
    9. Applied Knowledge Check Quiz 15 min
  13. 13 Classes and Inheritance 10 lessons

    Use ES6 classes, inheritance, and static members for object-oriented code.

    1. Class Syntax Reading 10 min
    2. Constructors Reading 10 min
    3. Methods Reading 10 min
    4. Inheritance with extends Reading 10 min
    5. Static Methods Reading 10 min
    6. Getters and Setters Reading 10 min
    7. Public and Private Fields Reading 12 min
    8. Composition vs Inheritance Reading 10 min
    9. Core Knowledge Check Quiz 10 min
    10. Applied Knowledge Check Quiz 15 min
  14. 14 Prototypes and Inheritance 8 lessons

    Understand JavaScript's prototype chain and prototypal inheritance.

    1. The Prototype Chain Reading 10 min
    2. Object.create() Reading 10 min
    3. __proto__ Reading 10 min
    4. Prototypal Inheritance Reading 10 min
    5. Constructor Functions and prototype Reading 12 min
    6. Classes and Prototypes Reading 12 min
    7. Core Knowledge Check Quiz 10 min
    8. Applied Knowledge Check Quiz 15 min
  15. 15 Error Handling 8 lessons

    Handle and create errors gracefully to build robust applications.

    1. try / catch Blocks Reading 10 min
    2. The finally Block Reading 10 min
    3. Throwing Errors Reading 10 min
    4. Error Types Reading 10 min
    5. Custom Errors Reading 10 min
    6. Practical Error Handling Patterns Reading 12 min
    7. Core Knowledge Check Quiz 10 min
    8. Applied Knowledge Check Quiz 15 min
  16. 16 Asynchronous Programming 9 lessons

    Handle non-blocking operations with callbacks and async/await.

    1. Synchronous vs Asynchronous Reading 10 min
    2. Callbacks Reading 10 min
    3. Callback Hell Reading 10 min
    4. Promises Reading 10 min
    5. async / await Reading 10 min
    6. Error Handling with catch Reading 10 min
    7. Running Tasks in Parallel Reading 12 min
    8. Core Knowledge Check Quiz 10 min
    9. Applied Knowledge Check Quiz 15 min
  17. 17 Promises 9 lessons

    Manage asynchronous results with promises and chaining.

    1. Introduction to Promises Reading 10 min
    2. Creating a Promise Reading 10 min
    3. then, catch, and finally Reading 10 min
    4. Promise Chaining Reading 10 min
    5. Promise.all, race, allSettled, and any Reading 10 min
    6. Promisifying Callbacks Reading 10 min
    7. Timeouts and Cancellation Reading 12 min
    8. Core Knowledge Check Quiz 10 min
    9. Applied Knowledge Check Quiz 15 min
  18. 18 The Event Loop 9 lessons

    Understand how the JavaScript engine schedules and runs your code.

    1. JavaScript Engine and Runtime Reading 10 min
    2. The Call Stack Reading 10 min
    3. Microtasks Reading 10 min
    4. Macrotasks Reading 10 min
    5. Concurrency Model Reading 10 min
    6. Rendering and Long Tasks Reading 12 min
    7. Predicting Execution Order Reading 12 min
    8. Core Knowledge Check Quiz 10 min
    9. Applied Knowledge Check Quiz 15 min
  19. 19 APIs and Fetch 10 lessons

    Communicate with REST APIs using fetch and handle CORS.

    1. Using fetch Reading 10 min
    2. Interacting with REST APIs Reading 10 min
    3. Handling JSON Reading 10 min
    4. What Is CORS? Reading 10 min
    5. Why CORS Exists Reading 10 min
    6. Solving CORS Errors Reading 10 min
    7. Request Options and Error Responses Reading 12 min
    8. Query Params, Headers, and Auth Reading 12 min
    9. Core Knowledge Check Quiz 10 min
    10. Applied Knowledge Check Quiz 15 min
  20. 20 Functional Programming 9 lessons

    Apply functional programming principles to write predictable code.

    1. Pure Functions Reading 10 min
    2. Immutability Reading 10 min
    3. Higher-Order Functions Reading 10 min
    4. Declarative Array Transformations Reading 10 min
    5. Currying Reading 10 min
    6. Function Composition Reading 10 min
    7. Reduce and Recursion Reading 12 min
    8. Core Knowledge Check Quiz 10 min
    9. Applied Knowledge Check Quiz 15 min
  21. 21 Advanced Asynchronous Patterns 12 lessons

    Use advanced asynchronous patterns to manage streams, cancellation, retries, concurrency, queues, and event-driven work.

    1. Generators Reading 10 min
    2. Async Iterators Reading 10 min
    3. for await...of and Streaming Data Reading 12 min
    4. Cancellation With AbortController Reading 12 min
    5. Timeouts, Retries, and Backoff Reading 12 min
    6. Concurrency Limits and Pools Reading 12 min
    7. Race Conditions and Stale Results Reading 12 min
    8. Async Queues and Task Scheduling Reading 12 min
    9. Debouncing and Throttling Async Work Reading 12 min
    10. Observables and Event Streams Reading 12 min
    11. Core Knowledge Check Quiz 10 min
    12. Applied Knowledge Check Quiz 15 min
  22. 22 Metaprogramming 10 lessons

    Inspect and customize JavaScript object behavior with descriptors, symbols, Reflect, proxies, and iterables.

    1. Object Introspection and Descriptors Reading 12 min
    2. Defining and Controlling Properties Reading 12 min
    3. Getters, Setters, and Computed Behavior Reading 12 min
    4. Symbols and Well-Known Symbols Reading 12 min
    5. Custom Iterables and Symbol.iterator Reading 12 min
    6. Reflect Reading 12 min
    7. Proxies Reading 15 min
    8. Practical Metaprogramming Patterns Reading 12 min
    9. Core Knowledge Check Quiz 10 min
    10. Applied Knowledge Check Quiz 15 min
  23. 23 Memory Management 11 lessons

    Understand JavaScript memory, garbage collection, reachability, leaks, weak references, and practical cleanup patterns.

    1. Memory Lifecycle Reading 10 min
    2. Stack and Heap Reading 10 min
    3. Garbage Collection Reading 12 min
    4. References and Reachability Reading 12 min
    5. Common Memory Leaks Reading 12 min
    6. Closures and Async Cleanup Reading 12 min
    7. WeakMap and WeakSet Reading 10 min
    8. WeakRef and FinalizationRegistry Reading 10 min
    9. Practical Memory Debugging Reading 12 min
    10. Core Knowledge Check Quiz 10 min
    11. Applied Knowledge Check Quiz 15 min
  24. 24 Performance Optimization 13 lessons

    Measure, debug, and improve JavaScript performance in browsers and real applications.

    1. Measuring Before Optimizing Reading 10 min
    2. Browser Performance Model Reading 10 min
    3. Main Thread and Long Tasks Reading 12 min
    4. DOM, Layout, and Paint Reading 12 min
    5. Debouncing Reading 10 min
    6. Throttling Reading 10 min
    7. Memoization and Caching Reading 12 min
    8. Lazy Loading and Dynamic Import Reading 12 min
    9. Animation, Idle Work, and Workers Reading 12 min
    10. Network, Bundle, and Memory Tradeoffs Reading 12 min
    11. Profiling with DevTools Reading 12 min
    12. Core Knowledge Check Quiz 10 min
    13. Applied Knowledge Check Quiz 15 min
  25. 25 Security 10 lessons

    Protect JavaScript applications from common web security risks.

    1. Preventing XSS Reading 12 min
    2. Preventing CSRF Reading 12 min
    3. Sanitizing Input Reading 10 min
    4. Authentication and Token Storage Reading 12 min
    5. CORS and Browser Security Boundaries Reading 12 min
    6. Dangerous Code and Prototype Pollution Reading 12 min
    7. Dependencies, Secrets, and Error Handling Reading 12 min
    8. Practical Secure Coding Habits Reading 12 min
    9. Core Knowledge Check Quiz 10 min
    10. Applied Knowledge Check Quiz 15 min
  26. 26 Design Patterns 15 lessons

    Solve common problems with established JavaScript design patterns.

    1. What Are Design Patterns? Reading 10 min
    2. Module Pattern Reading 10 min
    3. Factory Pattern Reading 10 min
    4. Singleton Pattern Reading 10 min
    5. Observer and Pub/Sub Reading 12 min
    6. Strategy Pattern Reading 10 min
    7. Adapter and Facade Reading 12 min
    8. Decorator and Wrapper Pattern Reading 10 min
    9. Command Pattern Reading 10 min
    10. Iterator Pattern Reading 10 min
    11. Dependency Injection Basics Reading 10 min
    12. Composition Over Inheritance Reading 12 min
    13. Pattern Tradeoffs and Anti-Patterns Reading 12 min
    14. Core Knowledge Check Quiz 10 min
    15. Applied Knowledge Check Quiz 15 min
  27. 27 Debugging 11 lessons

    Find and fix bugs efficiently using developer tools and techniques.

    1. Console Methods Reading 12 min
    2. Browser DevTools Reading 12 min
    3. Breakpoints and Stepping Reading 12 min
    4. Debugging Common Errors Reading 12 min
    5. Debugging Async Code Reading 12 min
    6. Network and API Debugging Reading 12 min
    7. DOM and Event Debugging Reading 12 min
    8. Performance and Memory Debugging Reading 12 min
    9. Practical Debugging Workflow Reading 12 min
    10. Core Knowledge Check Quiz 10 min
    11. Applied Knowledge Check Quiz 15 min
  28. 28 Testing 10 lessons

    Write reliable JavaScript tests with unit, integration, async, mock, and workflow patterns.

    1. Types of Testing Reading 12 min
    2. Unit Testing Reading 12 min
    3. Integration Testing Reading 12 min
    4. Jest Reading 12 min
    5. Mocha Reading 12 min
    6. Testing Async Code and Errors Reading 12 min
    7. Mocks, Stubs, Spies, and Fetch Reading 12 min
    8. Test Organization and Workflow Reading 12 min
    9. Core Knowledge Check Quiz 10 min
    10. Applied Knowledge Check Quiz 15 min
  29. 29 Browser Environment 13 lessons

    Use JavaScript in the browser to work with the DOM, events, browser APIs, storage, navigation, rendering, compatibility, and DevTools.

    1. Browser Runtime and the DOM Reading 12 min
    2. Selecting Elements Reading 10 min
    3. Creating Elements Reading 12 min
    4. Modifying Elements Reading 12 min
    5. Types of Selectors Reading 10 min
    6. Events and the Event Loop Reading 12 min
    7. Script Loading and Browser Modules Reading 12 min
    8. Browser APIs, Storage, and Security Reading 12 min
    9. Location, History, and Navigation Reading 12 min
    10. Rendering, Performance, and Compatibility Reading 12 min
    11. DevTools and Browser Pitfalls Reading 12 min
    12. Core Knowledge Check Quiz 10 min
    13. Applied Knowledge Check Quiz 15 min
  30. 30 Events 14 lessons

    Handle browser events, event flow, delegation, forms, and event-driven UI patterns.

    1. Event-Driven Programming Reading 10 min
    2. Different Types of Events Reading 10 min
    3. Event Handling Reading 10 min
    4. addEventListener Reading 10 min
    5. Click and Hover Handlers Reading 10 min
    6. Custom Events Reading 10 min
    7. Event Bubbling Reading 10 min
    8. Event Capturing Reading 10 min
    9. Event Delegation Reading 10 min
    10. Event Methods Reading 10 min
    11. Keyboard, Form, and Input Events Reading 12 min
    12. Event Handler Patterns Reading 12 min
    13. Core Knowledge Check Quiz 10 min
    14. Applied Knowledge Check Quiz 15 min
  31. 31 Node.js Environment 12 lessons

    Run JavaScript outside the browser with Node.js, built-in modules, npm, files, streams, and server-side runtime APIs.

    1. What Is Node.js? Reading 10 min
    2. Running JavaScript with Node Reading 10 min
    3. Node.js Runtime and Globals Reading 12 min
    4. Modules in Node Reading 12 min
    5. package.json, npm, and Packages Reading 12 min
    6. Built-In Modules Reading 12 min
    7. Working with the File System Reading 12 min
    8. Environment Variables and CLI Arguments Reading 12 min
    9. Async Node APIs and Errors Reading 12 min
    10. Streams, Events, and HTTP Reading 12 min
    11. Core Knowledge Check Quiz 10 min
    12. Applied Knowledge Check Quiz 15 min
  32. 32 Project Based Learning 13 lessons

    Apply JavaScript fundamentals by planning, building, testing, documenting, and sharing complete projects.

    1. Project Overview Reading 12 min
    2. Planning Your Project Reading 12 min
    3. Breaking Work Into Milestones Reading 12 min
    4. Project Setup and Organization Reading 12 min
    5. Designing Data and State Reading 12 min
    6. DOM, Events, APIs, and Storage Reading 14 min
    7. Debugging and Testing Strategy Reading 12 min
    8. Refactoring, Performance, and Security Reading 14 min
    9. Documenting, Deploying, and Sharing Reading 12 min
    10. Practical Project Briefs Reading 15 min
    11. Capstone Project Plan Reading 15 min
    12. Core Knowledge Check Quiz 10 min
    13. Applied Knowledge Check Quiz 15 min
  33. 33 Interview Questions 4 lessons

    Prepare for JavaScript interviews with common questions and challenges.

    1. Core Concepts Questions Reading 10 min
    2. Coding Challenges Reading 10 min
    3. Tricky Questions Reading 10 min
    4. System Design Basics Reading 10 min
  34. 34 Certification 2 lessons

    Complete the final assessment and earn your certificate.

    1. Final Assessment Reading 10 min
    2. Getting Certified Reading 10 min