Unlock the full course

You have reached the end of the free trial. Get access to all lessons, challenges, projects & flashcards with a one-time payment that gives you access for 5 years.

Our approach to fair and supportive pricing.

What you will get

What you will learn

This course covers the fundamentals of JavaScript. It is the best way to learn JavaScript in 2026.
We've got a unique approach as we like to explain the concepts step by step so that you can fully understand how it works.
The lessons & challenges will guide you through these topics step by step:

  • Arrays
  • Functions
  • Arrow functions
  • Advanced Arrays
  • Destructuring
  • Optional chaining
  • Nullish coalescing
  • Objects
  • Arrays of Objects
  • Advanced Control Flow
  • Reduce
  • Classes
  • Callbacks
  • Asynchronous logic
  • Advanced classes
  • Prototypical inheritance
  • JSON
  • Promises
  • Fetch
  • Work with real APIs
  • Lexical scope
  • Async/await
  • DOM Selection
  • DOM basics
  • Advanced DOM
  • Events
  • Forms
  • Package Managers
  • Module Bundlers
  • Modules
  • Dynamic imports
  • ECMAScript
  • Legacy var
  • Legacy topics
  • Window object
  • Closures
  • Loops & iteration
  • The event loop
  • Intro to regex
  • Interview questions
  • Web Components
  • Introduction to Lit
  • Regular expressions
  • JavaScript quirks
  • Interview questions
  • Map and Set
  • Functional programming
  • Generator functions
View all chapters →

17 Real World Projects included

Here's a glimpse of some of the projects.

Todo App API Project

Build a Todo app project using using Fetch, classes, and a real API.

Preview of the Todo App

Food Tracker (Final Project)

Multi-step final project teaching you how to build a food tracker from scratch with a real API.

Preview of the Food Tracker Web App

Preview of the Food Tracker Web App

Reviews

This is probably the most comprehensive js course out there right now. I've never seen a course before that really goes into anything about how to practically use js. This is by far the best course I've ever used to learn something period. I say that because there a lot of attention payed to small details.

- David (Student of Learn JavaScript—verified purchase)

100% worth it. It was the last JS course I took.

- Reddit thread

Used by & featured in

  • MDN
  • Syntra Antwerpen & Vlaamse-brabant
  • Oklahoma Christian Univeristy
  • Eastern Washington Univeristy
  • upleveled bootcamp
  • ElPais
  • Harvard Student Agencies
  • University of Minnesota

Frequently asked questions

Here are some of the most asked questions. If you have any other question, considercontacting support.

Choosing the right course

Learn Programming vs. Learn JavaScript

The Learn Programming and Learn JavaScript (this course) are both JavaScript courses but they are aimed at different levels. Learn Programming is aimed at absolute beginners (with low to no programming experience in general). In contrast, Learn JavaScript (this course) assumes you know basic programming concepts (variables, functions, iterations, etc.) and teaches you JavaScript from that level. Therefore, this course goes into more advanced concepts such as Promises, Fetch, and DOM.

If you're unsure which course to choose, we recommend you try both free trials. If you're a beginner, you can start with the Learn Programming course and then move to this one.

Payment

Is it a one-time payment or subscription?

Yes, it is a one-time payment that gives you access for 5 years.
If you'd like to use the app after those 5 years, you will have to make a new payment. We will not automatically charge your card and there is no automatic renewal.
We believe that you should not have to pay monthly except for Gas, Water & Electricity (and maybe Netflix). This encourages you to take your time while working on the course, rather than rushing it. Note that the payment is only valid for this course.

What happens after my PRO account expires (after 5 years)?

The majority of students will not need to access their accounts past the 5 years mark. After 5 years, your account will be downgraded from PRO. You will have the option to upgrade again. There is no automatic renewal and your card will not be automatically charged.

Can I pay in a different currency?

Yes, you can! You can pay in your own currency so that you don't incur a cost for currency exchange. Contact support if your currency is not available in the dropdown above (subject to availability).
The exchange rates are refreshed on our backend as frequently as every 5 minutes. The latest exchange rate will be used. If you keep the page open for long, you may be seeing an amount based on an outdated exchange rate.You will have to reload the page to get the view the latest price in your currency.

How do you process my payment?

We use Stripe or Paypal to process your payments and your credit card information never touches our servers.

Can I use the account for more than one person?

No, every paid account is meant to be used by one person only. We perform manual and automated checks while guaranteeing privacy.
Your account is tied to your GitHub username.

Do I get access to other courses?

No, other courses on different domains have a different price and PRO membership.

Do you offer a discount for bundles (multiple courses)?

Yes, for courses you haven't purchased yet. You can bundle courses and get a discount. The first bundled course will give you a 10% discount. Every additional course will add a 5% discount.

The bundle discount cannot be combined with other discounts.

Can I gift the course?

Yes, this is possible. Please contact support for more information.

VAT

I am a company registered in the EU. Can I use reverse VAT charge?

Yes, you can! Please note that this has to be done before you pay for the course. You can enter your VAT number by clicking on the VAT Info button. Please note that this is not available if your company is registered in the Netherlands.

How is VAT calculated?

VAT is finalized after you complete the payment because only then we will be able to know whether VAT should be collected or not. In both cases, the price will not change as the VAT is extracted from the amount you pay. You will be able to see whether VAT has been charged or not in your invoice.

Invoicing

Can I get an invoice?

You will automatically receive a (Business to Consumer) invoice after your payment by email. You will have the option to update this invoice with your (company) details within 30 days. Please note that if you require an EU VAT reverse charge invoice, then you should click on the VAT Info button and enter your VAT number before making the purchase.

What are the company details?

The company is registered in the Netherlands. You can find the company details below:

Company name: Jad Joubran B.V.
Chamber of Commerce number: 82283095
VAT Number: NL862410228B01

PRO Account

Will I be able to jump to any chapter once I upgrade?

Not before you solve the previous chapters. The chapters are sequential because the topics build on top of each other. Even when you upgrade to PRO, you will have to go through them one by one. However, you have the option to jump to a specific chapter from the help menu by selecting Course Progress > skip to a chapter or ask support to unlock all chapters so you can freely move around.

Do I get a certificate of completion?

Yes, you can get a signed certificate of completion with your full name once you finish the entire course.

Can I extend my PRO account beyond 5 years?

Unfortunately not, the PRO account is linked to your purchase date and cannot be extended or modified as it's used for accounting purposes.

What can I build after finishing this course?

This course is a perfect pre-requisite to learning any frontend framework or library (such as React, Vue, Angular) as it teaches you the fundamentals of JavaScript & the DOM. After finishing this course, you'll be able to confidently work with JavaScript, especially with Arrays, Objects, Functions, Classes, and the DOM.

What are the Projects?

Projects are challenges that are longer and have a bit less guidance while focusing more on real-world scenarios. These projects allow you to practice most of the concepts you learned so far and apply them in different contexts. Check out the list of projects above.

Companies & Universities

Can I get a group discount?

Group discounts are available for groups of 5, 10, 15, 20 and above. Please use the help center to contact us with the approximate size of your group.

I am a university instructor. Is this course suitable for my students?

Absolutely! The course is already being used in conjunction with university material at some universities. Please check out Learn JavaScript for Universities for more information.

Curious to know what we shipped recently? Check out our public-facing Trello board.