Course Introduction and Setup
  • Course Introduction and Overview
  • Setting up tools and environment
Variables
  • Defining Variables
  • Let vs Const
  • Valid Variables
  • Basic Debugging Techniques
Primitive Data Types
  • Types of Data Types
  • null & undefined
  • Boolean
  • Strings
  • Template Strings
  • String Methods
  • Numbers
  • Math Methods
  • Math.random()
  • Symbol
  • Type Conversions
  • Coding Exercise
  • Coding Solution
JavaScript Basics (Operators and Statements)
  • Section Intro
  • Operators
  • Bitwise Operators
  • if/else Statement
  • switch Statement
  • for Loop
  • while Loop
  • Coding Exercise
  • Coding Solution
Variable Scope & Scope Chain
  • Section Intro
  • Global Scope
  • Block Scope
  • Lexical Scope
  • Scope Chain
Arrays and Objects
  • Section Intro
  • Array Introduction
  • Mutating Arrays
  • Multidimensional Arrays
  • Iterating Arrays using "forEach" & "for of"
  • Object Introduction
  • Iterating Objects using "for in"
  • Destructuring
  • Sets
  • Maps and WeakMaps
  • Coding Exercise
  • Coding Solution
functions
  • Function Basics
  • Spread Operator and Rest Parameters
  • Default Parameters
  • Callback Functions
  • Map, Filter, and Reduce Methods
  • Array Method Sort()
  • Array Methods some() & every()
  • Coding Exercise
  • Coding Solution
Object Oriented Programming
  • Prototypal Inheritance
  • Function Constructors
  • Extending Constructors
  • Classes
  • Sub Classes
  • Arrow Function
Functional Programming
  • "this" keyword in Object Literals
  • Call Apply Bind
  • Closures
  • Function Chaining
Async JavaScript
  • Blocking vs Non-Blocking
  • setTimeout & setInterval
  • Promises
  • Async Await
  • Rest API
  • GET, POST, PUT
  • Fetch API
JavaScript and HTML
  • Installing Visual Studio Code Editor
  • Using JavaScript In HTML
  • DOM Events
  • Event Bubbling and Capturing
  • Debounce Function
  • Throttling
  • Coding Exercise : Building a Todo App
  • Coding Solution
ES2019 Features (*new*)
  • Object Method Object.fromEntries()
  • Array Methods flat() & flatMap()
  • String Methods trimStart() & trimEnd()
  • Symbol.description()
  • Optional Catch Binding
Browser caching and local storage
  • Browser caching
  • cookies
  • localStorage