Objects: property access patterns, dynamic keys, and for...in iteration
Functions: defining/using them, return values, and what happens if returns are unused
Browser popups: alert/prompt/confirm and prompt's Cancel return value
Random numbers: Math.random, scaling, and generating inclusive integer ranges
Web forms basics: reading inputs, radio grouping by name, dropdown handling, DOM output
Modern JS features: template literals and string interpolation
Collections & strings: Map/Set usage, forEach parameter order, and string methods (replaceAll, title case)
About the free online course
JavaScript is the language that brings the web to life, and learning it well opens doors in web development, automation, and modern app building. This free online course helps you move from basic syntax to confident problem solving, so you can read code without guessing, write your own logic clearly, and understand why your programs behave the way they do.
You will start by establishing strong foundations: how statements are structured, how variables work, and how math and operator precedence affect results. From there, you will gain control over program flow with comparisons, conditionals, and logical operators, building the mindset needed to translate real requirements into code that makes correct decisions.
Practice is central throughout. Looping patterns with for and while help you automate repetition, and classic challenges like FizzBuzz train you to order conditions properly and think in edge cases. As you progress, you will work with arrays and multi-dimensional data, then level up with objects so you can model real-world information and access properties dynamically.
Functions tie everything together, helping you write reusable code, return values intentionally, and structure programs that scale beyond a single script. You will also interact with users using popup boxes, handle randomness correctly for small games and drills, and build practical features with web forms, radio buttons, and drop-down menus that mirror everyday front-end tasks.
The course also introduces working with external content through a headless CMS and fetching data with JavaScript, giving you a taste of how dynamic websites pull information from elsewhere. By the end, you will be comfortable with modern essentials like template literals, switch statements, Maps, Sets, and useful string methods, including formatting text into title case. Finish with stronger fundamentals and a toolbox you can apply immediately in personal projects, interviews, or your next step in technology and programming.
Course content
Video class: Intro To Javascript Programming! - Javascript Programming 112m
Exercise: What typically terminates a JavaScript statement?
Video class: Javascript Variables - Javascript Programming 211m
Exercise: JavaScript variables: which statement is correct?
Video class: All About Math - Javascript Programming 307m
Exercise: Evaluate the JavaScript expression 2 * 3 + 5 using order of operations
Video class: Assignment Operators - Javascript Programming 407m
Exercise: Which statement correctly adds 5 to the variable count and stores the result for later use?
Video class: Comparison Operators - Javascript Programming 508m
Exercise: Which operator checks both value and data type equality in JavaScript?
Video class: Conditional Statements - Javascript Programming 608m
Exercise: Behavior of if else if else chain after a true condition in JavaScript
Video class: Logical Operators - Javascript Programming 706m
Exercise: Understanding && in JavaScript conditionals
Video class: For Loops - Javascript Programming 807m
Exercise: In a JavaScript for loop, what does the third expression control?
Video class: While Loops - Javascript Programming 906m
Exercise: What happens if you forget to increment the counter inside a JavaScript while loop?
Video class: FizzBuzz!! - Javascript Programming 1006m
Exercise: In a JavaScript FizzBuzz from 1 to 100, which condition should be checked first inside the if chain to correctly handle numbers divisible by both 3 and 5
Video class: Arrays - Javascript Programming 1111m
Exercise: Which operation removes an element from a JavaScript array and updates the length without leaving an empty slot?
Video class: Multi-Dimensional Arrays - Javascript Programming 1209m
Exercise: After pushing Denver into the nested array at index 4, what is toppings[4].length if it initially has Las Vegas, Chicago, New York?
Video class: Objects (Not Dictionaries) - Javascript Programming 1307m
Exercise: Accessing object properties dynamically in a for in loop
Video class: Mastering Javascript Functions - Javascript Programming 1411m
Exercise: When a JavaScript function returns a value but that value is not assigned or output, what happens
Video class: Popup Boxes - Javascript Programming 1505m
Exercise: In JavaScript, what value does prompt return when the user clicks Cancel?
Video class: Why Are Random Numbers So Hard?! - Javascript Programming 1608m
Exercise: Which expression returns a random integer between 1 and 10 inclusive in JavaScript?
Video class: Web Forms - Javascript Programming 1708m
Exercise: Read a form input and display a greeting in the page
Video class: Radio Buttons and Drop Down Menus - Javascript Programming 1813m
Exercise: What groups radio buttons so only one can be selected at a time in JavaScript forms?
Video class: OneEntry Headless CMS!27m
Exercise: Fetching CMS content with JavaScript
Video class: Math Flashcards Pt1 - Javascript Programming 1917m
Exercise: How do you generate a random integer from 1 to 10 in JavaScript?
Video class: Math Flashcards Part 2 - Javascript Programming 2017m
Exercise: How do you define a global variable that works across environments in JavaScript
Video class: String Templates and Interpolation - Javascript Programming 2108m
Exercise: Which option correctly uses a JavaScript template literal to interpolate a variable into a string?
Video class: Switch Statements - Javascript Programming 2206m
Exercise: What does the break statement do inside a JavaScript switch case
Video class: JS Maps - Javascript Programming 2307m
Exercise: In JavaScript Map.forEach, what is the callback parameter order
Video class: JS Sets - Javascript Programming 2406m
Exercise: Which method checks if a JavaScript Set contains a value?
Video class: String Methods - Javascript Programming 2511m
Exercise: Which JavaScript string method replaces every occurrence of a substring?
Video class: Title Case Capitalization - Javascript Programming 2609m