Welcome, Welcome, Welcome!
  • Course Structure and Projects
  • Watch Before You Start!
  • Read Before You Start!
  • Migration Guide to v2 + Old Course
  • Setting Up Our Code Editor
JavaScript Fundamentals – Part 1
  • Section Intro
  • Hello World!
  • A Brief Introduction to JavaScript
  • Linking a JavaScript File
  • Values and Variables
  • Practice Assignments
  • Data Types
  • let, const and var
  • Basic Operators
  • Operator Precedence
  • Coding Challenge #1
  • Strings and Template Literals
  • Taking Decisions: if / else Statements
  • Coding Challenge #2
  • Type Conversion and Coercion
  • Truthy and Falsy Values
  • Equality Operators: == vs. ===
  • Boolean Logic
  • Logical Operators
  • Coding Challenge #3
  • The switch Statement
  • Statements and Expressions
  • The Conditional (Ternary) Operator
  • Coding Challenge #4
  • JavaScript Releases: ES5, ES6+ and ESNext
JavaScript Fundamentals – Part 2
  • Section Intro
  • Activating Strict Mode
  • Functions
  • Function Declarations vs. Expressions
  • Arrow Functions
  • Functions Calling Other Functions
  • Reviewing Functions
  • Coding Challenge #1
  • Introduction to Arrays
  • Basic Array Operations (Methods)
  • Coding Challenge #2
  • Introduction to Objects
  • Dot vs. Bracket Notation
  • Object Methods
  • Coding Challenge #3
  • Iteration: The for Loop
  • Looping Arrays, Breaking and Continuing
  • Looping Backwards and Loops in Loops
  • The while Loop
  • Coding Challenge #4
How to Navigate This Course
  • Pathways and Section Roadmaps
  • Course Pathways
Developer Skills & Editor Setup
  • Section Intro
  • Section Roadmap
  • Setting up Prettier and VS Code
  • Installing Node.js and Setting Up a Dev Environment
  • Learning How to Code
  • How to Think Like a Developer: Become a Problem Solver!
  • Using Google, StackOverflow and MDN
  • Debugging (Fixing Errors)
  • Debugging with the Console and Breakpoints
  • Coding Challenge #1
[OPTIONAL] HTML & CSS Crash Course
  • Section Intro
  • Basic HTML Structure and Elements
  • Attributes, Classes and IDs
  • Basic Styling with CSS
  • Introduction to the CSS Box Model
JavaScript in the Browser: DOM and Events Fundamentals
  • Section Intro
  • Section Roadmap
  • PROJECT #1: Guess My Number!
  • What's the DOM and DOM Manipulation
  • Selecting and Manipulating Elements
  • Handling Click Events
  • Implementing the Game Logic
  • Manipulating CSS Styles
  • Coding Challenge #1
  • Implementing Highscores
  • Refactoring Our Code: The DRY Principle
  • PROJECT #2: Modal Window
  • Working With Classes
  • Handling an "Esc" Keypress Event
  • PROJECT #3: Pig Game
  • Rolling the Dice
  • Switching the Active Player
  • Holding Current Score
  • Resetting the Game
How JavaScript Works Behind the Scenes
  • Section Intro
  • Section Roadmap
  • An High-Level Overview of JavaScript
  • The JavaScript Engine and Runtime
  • Execution Contexts and The Call Stack
  • Scope and The Scope Chain