Getting Started
  • Introduction
  • Join our Online Learning Community
  • How to Execute JavaScript (Where does JS run?)
  • JavaScript Versions (ES5 vs ES6)
  • Course Format
Language Basics
  • Introduction
  • Using JavaScript - Inline HTML
  • Using JavaScript - HTML Import
  • Variables - Basics
  • Variables - null, undefined and NaN
  • Variables - Objects
  • Strict Mode
  • Dynamic Typing
  • Hoisting
  • Functions - Creating and Calling Them
  • Functions - Arguments & Returning Data
  • Control Structures - If Statement
  • Control Structures - If Statement Advanced
  • Control Structures - Switch
  • Control Structures - Switch & Break
  • Control Structures - For Loop
  • Control Structures - Nested Loops
  • Control Structures - Controlling Loops with break & continue
  • Control Structures - For Loop Variations
  • Control Structures - Looping through Arrays
  • Control Structures - While Loop
  • Operators - Addition
  • Operators - Subtraction
  • Operators - Multiplication & Floating Point Problems
  • Operators - Division & Modulus
  • Operators - Comparing Values
  • Operators - Important Rules
  • Operators - Boolean
  • Operators - Ternary Operator
  • Operators - Precedence
  • Wrap Up
  • Module Resources
Types & Scope
  • Primitive vs Reference Types
  • Primitive vs Reference Types - Exercise
  • Global vs Local Scope
  • Global vs Local Scope - Exercise
  • Module Resources
Arrays
  • Introduction
  • Basics & Managing Elements
  • The forEach() Method
  • Working with Elements: Push, Pop, Unshift and Shift
  • Working with Parts of an Array: IndexOf, Splice and Slice
  • Filtering, Mapping and Reversing Array Elements
  • The Difference between Concat and Join
  • Reducing Arrays
  • Wrap Up
  • Module Resources
Objects
  • Object Basics & Literal Notation
  • Properties & "this"
  • Alternative Way of Creating Objects: Using the Object Constructor
  • Objects are Reference Types (Refresher)
  • Object.create()
  • Prototypes Introduction
  • Prototypes in Action
  • Prototypes Summary
  • Constructor Functions
  • Constructor Functions & Arguments
  • Object Creation & Prototypes Summary
  • The "this" Keyword and why it might behave strangely
  • Handling "this" with bind(), call() & apply()
  • Creating Properties with defineProperty()
  • Important built-in Methods and Properties
  • Wrap Up
  • Module Resources
Errors & Debugging
  • Debugging with the Browser Developer Tools
  • Logging Data to the Console
  • Handling Errors with try and catch
  • Module Resources
Functions
  • Introduction
  • Closures
  • Immediately Invoked Function Executions (IIFEs)
  • Built-in Methods & Properties
  • Module Resources
Built-in Objects & Functions
  • Introduction
  • Timers & Intervals
  • Transforming Formats & Values
  • String Functions
  • The Math Object
  • The Date Object
  • Regular Expressions
  • Module Resources
Working with the Window and Document Object Model (DOM)
  • Introduction
  • The Window Object
  • The Location Object
  • The Document Object and How to Interact with It
  • Traversing the DOM