JavaScript fundamentals: build interactive web pages

Learn the language properly, from values and functions to the DOM, events and modules, with small exercises you run in the browser

7 ratings 3,570 students Sample

Created by Tomas Lindqvist

  • Updated August 2026
  • English
  • Beginner

What you will learn

  • Use variables, types, conditions and loops in modern JavaScript
  • Write functions and explain scope and closures
  • Transform data with array methods such as map, filter and reduce
  • Select, create and update page elements through the DOM
  • Handle clicks, input and form submissions with event listeners
  • Split code into ES modules and fetch JSON from an API

Course content

6 sections, 25 lessons, 4h 24m total

Language foundations 5 lessons · 51 min
  • Video: JavaScript in the browser Preview 8 min
  • Article: Values, variables and types Preview 12 min
  • Article: Functions and scope 13 min
  • Article: Arrays and objects 13 min
  • Quiz: Check your understanding 5 min
Working with the DOM 4 lessons · 49 min
  • Video: Selecting and reading elements 11 min
  • Video: Changing content and classes 11 min
  • Video: Creating elements from data 13 min
  • Video: Project: the tip calculator 14 min
Events and forms 4 lessons · 42 min
  • Video: Event listeners 11 min
  • Article: Event delegation 9 min
  • Video: Forms, validation and submit 13 min
  • Video: Keyboard and focus 9 min
Organising code 4 lessons · 43 min
  • Video: ES modules: import and export 11 min
  • Video: State and rendering 12 min
  • Video: Saving to localStorage 9 min
  • Video: Debugging with dev tools 11 min
Asynchronous JavaScript 4 lessons · 49 min
  • Video: Timers and the event loop 10 min
  • Video: Promises and async await 13 min
  • Video: Fetching JSON from an API 12 min
  • Video: Project: a quiz game 14 min
Next steps 4 lessons · 30 min
  • Article: Modern syntax worth knowing 10 min
  • Video: Writing clean JavaScript 9 min
  • Article: Where to go from here 6 min
  • Quiz: Final check 5 min

Requirements

  • Basic HTML knowledge
  • A code editor and a current web browser

Description

JavaScript is the language of the web. Every interactive page you use, from a simple menu to a full web app, runs on it. Frameworks come and go, but they are all built on the same language, and developers who understand it well learn any framework faster.

This course teaches modern JavaScript from the beginning. We use the browser as our playground, so you need nothing more than a code editor and Chrome, Firefox or Safari. Each lesson introduces one idea, shows it in a few lines and gives you a short exercise to run in the browser console or on a page.

What you will learn

  • Values, variables and types, including the parts of JavaScript that surprise people
  • Functions, scope and closures
  • Arrays and objects, and the methods you will use every day
  • The DOM: selecting, creating and changing elements
  • Events and forms
  • Modules, and how to organise code across files
  • A first look at fetching data from an API

The projects

Along the way you build three small pages: a tip calculator, a filterable list of books and a simple quiz game. They are deliberately small, so you can understand every line.

No previous programming experience is required, but you should know basic HTML. If you have written a few HTML pages and some CSS, you are ready.

Who this course is for

  • Beginners who know some HTML and CSS and want to add interactivity
  • Designers who want to understand front end code
  • Developers from other languages who need a solid JavaScript base

Instructor

Tomas Lindqvist

JavaScript and TypeScript teacher focused on fundamentals that last longer than frameworks

  • 4.5 instructor rating
  • 22 reviews
  • 10,782 students
  • 3 courses
  • Sample

I have written JavaScript for browsers and servers for a long time, and I still think the language itself is the best investment a web developer can make. Frameworks change every few years. Closures, the event loop and a good type system do not.

I teach in small steps with lots of short exercises. Every lesson ends with something you can run in the browser console or in Node, so you never have to take my word for it.

When I am not recording, I maintain internal tooling and libraries written in TypeScript, and I spend more time than I should reading the ECMAScript proposals list.

View profile

Student reviews

4.4 7 ratings
5 star 57%
4 star 29%
3 star 14%
2 star 0%
1 star 0%
Yasmin E. Sep 29, 2026
Sample

Debugging lesson is underrated

Learning breakpoints changed how I work. I rarely sprinkle console.log everywhere now.

Lisa M. Sep 14, 2026
Sample

The basics, explained properly

I had copied JavaScript snippets for years without understanding them. Closures and references finally make sense.

Ahmed S. Aug 13, 2026
Sample

Small projects, big confidence

The tip calculator and quiz game are simple but I understood every line. That was exactly what I needed.

Jana P. Jul 8, 2026
Sample

Clear and well paced

Short lessons with exercises in the console worked well for me. The async section could be a little longer.

Ricardo T. May 11, 2026
Sample

State and render pattern is great

The lesson on keeping state and rendering from it made learning React afterwards much easier.

Ingrid H. Mar 15, 2026
Sample

Good for designers too

As a designer I wanted to understand what developers do. This course was approachable and practical.

Kwabena A. Jan 1, 2026
Sample

Wanted more practice

The explanations are good but I would have liked more exercises per section, especially on arrays.

$29.99 Enroll now
SampleSample catalog: the instructors, courses, reviews and stats on this site are demo content.