RizTech Academy logo
RizTech Academy

JavaScript Complete Foundation

The only language that runs in every browser. Learn it properly, including the parts that confuse everyone.

JavaScript has a reputation for being confusing, and some of that is deserved. Asynchronous behaviour, `this`, and closures trip up people who have already been writing it for a year.

This course confronts those directly rather than hoping you pick them up. You will understand why an API call returns undefined, why `this` changed, and what actually happens when the browser runs your script.

Everything is plain JavaScript. No framework. Learn React on top of shaky JavaScript and you will spend years confused about which one is misbehaving.

Who this is for

  • Beginners starting web development
  • Anyone who has copied JavaScript that works but does not know why
  • Students preparing for React or Node

What you need first

  • A computer and a modern browser
  • The Web UI Development Foundation course helps but is not required

Tools you will use

Node.js 22+VS CodeChrome DevTools

By the end you can

  • Write modern JavaScript with let, const, arrow functions and modules
  • Manipulate the DOM and handle events confidently
  • Explain closures, scope and `this` rather than avoiding them
  • Use promises and async/await without guessing
  • Fetch data from an API and render it
  • Debug JavaScript in browser devtools
Syllabus

7 modules, 34 lessons

Work through these in order. Each lesson is short enough to finish in one sitting and ends with something to build, not a quiz.

  1. 1

    Getting Started

    Where JavaScript runs and how to experiment with it.

    1. What JavaScript is, and where it runsComing soon
    2. The console and browser devtoolsComing soon
    3. Running JavaScript: script tags and NodeComing soon
  2. 2

    Language Basics

    Values, types and the quirks worth knowing early.

    1. var, let and const — and why var is retiredComing soon
    2. Types, coercion and the == versus === argumentComing soon
    3. Strings and template literalsComing soon
    4. Operators, conditions and truthinessComing soon
    5. Loops and iterationComing soon
  3. 3

    Functions, Scope and Closures

    The conceptual core of JavaScript. Get this right and everything else follows.

    1. Function declarations, expressions and arrow functionsComing soon
    2. Scope and hoistingComing soon
    3. Closures, explained with a problem they solveComing soon
    4. `this`, and why it keeps changingComing soon
    5. Callbacks and higher-order functionsComing soon
  4. 4

    Objects and Arrays

    How data is shaped in JavaScript, and the methods you will use daily.

    1. Objects, properties and methodsComing soon
    2. Arrays and the methods worth memorisingComing soon
    3. map, filter and reduceComing soon
    4. Destructuring and spreadComing soon
    5. JSON, parse and stringifyComing soon
  5. 5

    The DOM

    Making a page respond to a user.

    1. What the DOM actually isComing soon
    2. Selecting and changing elementsComing soon
    3. Events and event listenersComing soon
    4. Event delegation and bubblingComing soon
    5. Working with forms and validationComing soon
    6. Practice: a to-do list with no frameworkComing soon
  6. 6

    Asynchronous JavaScript

    The part everyone finds hard, taken slowly.

    1. Why JavaScript is asynchronous at allComing soon
    2. Callbacks and how they got out of handComing soon
    3. PromisesComing soon
    4. async and awaitComing soon
    5. Fetching data from an APIComing soon
    6. Handling errors in async codeComing soon
    7. Practice: building a live data pageComing soon
  7. 7

    Modules and Tooling

    Splitting code up and using the wider ecosystem.

    1. ES modules: import and exportComing soon
    2. npm and package.jsonComing soon
    3. Debugging in devtools properlyComing soon

Learning this with a mentor is faster

Our internship programme is free and fully remote. You get this curriculum, real project work, and code review from working developers.