Curriculum

2 Topics
Welcome to the course!
Start Using JavaScript

11 Topics
Module Intro: Variables & Strings
Variable Basics with var
Challenge: Variable Basics
Better Code with Strict Mode
Why Use let & const Over var
Challenge: const & let
How Const Improves Your Code
Why Block Scoping Matters
How Template Literals Improve Strings
Challenge: Template Literals
How Variables Should Be Named

9 Topics
Module Intro: Types & Conditionals
Conditionally Run JavaScript Code
Challenge: Your First Conditional
Types and How They Can Be Changed
Challenge: Types
How to Shorten Conditionals with Ternaries
Challenge: Ternaries
Even Shorter Conditionals with Short-Circuiting
Challenge: Short-Circuiting

10 Topics
Module Intro: Functions
Why We Need Functions
Challenge: Your First Function
What is a Closure and Why it Matters
Challenge: Count Downwards Using Closure
Better Functions with Default Parameters
Shorter Functions with Arrow Functions
Challenge: Arrow Functions
Partial Application for Single-Responsibility Functions
How Functions Should Be Named

11 Topics
Module Intro: Objects & Maps
Use Objects for Managing Key-Value Pairs
Challenge: Your First Object
Understand Primitive vs Object Types
Get and Modify Object Data
Easy Property Access with Destructuring
Challenge: Object Destructuring
Merge Objects with Object Spread
How Maps Can Do What Objects Can't
Challenge: Your First Map
Improve Methods with Arrow Functions

17 Topics
Module Intro: Arrays
Build Flexible Collections with Arrays
Challenge: Your First Array
Check Element Existence in Arrays
Challenge: .some and .every
Perform Actions on All Elements
Get Subsets of Arrays
Transform Arrays with .reduce()
Challenge: Transform Arrays with .reduce()
Understand the Power of .reduce()
Avoid Mutations with Array Spread
Mold Arrays with the Spread Operator
More Flexible Arrays with Destructuring
Challenge: Array Destructuring
Turn Objects into Flexible Arrays
Get Unique Sets of Data
Use New Immutable Array Features

9 Topics
Module Intro: Classes
What Are Constructor Functions?
Challenge: Your First Constructor Function
Understand the Prototype Chain
Easy Prototypal Inheritance with Classes
Challenge: Your First Class
Share Class Features with Extends
How To Get Set and Simplify Classes
Fix Context Problems with .bind()

8 Topics
Module Intro: DOM
What is the DOM?
Get Single and Multiple Elements
Creating and Modifying HTML Elements
Challenge: Creating and Modifying HTML Elements
Dynamically Add CSS Styles
Understand and Work with Events
Challenge: Events

8 Topics
Module Intro: Async JavaScript
The Problem with Callbacks
Fix Callback Hell with Promises
Make Network Requests with fetch()
Challenge: Fetch API
Dead-Simple Promises with async-await
Catch Errors with async-await
Challenge: async-await

10 Topics
Module Intro: Google Keep Clone
Google Keep - Project Setup
Google Keep - Expanding and Closing Notes
Google Keep - Storing Notes in the App
Google Keep - Displaying Notes in the App
Google Keep - Improving Functionality
Google Keep - Editing Notes
Google Keep - Changing Note Color
Google Keep - Deleting Notes
Google Keep - Storing Notes in the Browser

7 Topics
Module Intro: Essential Concepts
Share App Code with Modules
Challenge: Modules
Know What 'this' is at Any Time
Understand State and State Management
How Reducers Help Manage State
Avoid Imperative Write Declarative Code

11 Topics
Module Intro: Hacker News Clone
Hacker News - Creating HTML and CSS
Hacker News - Adding Pages
Hacker News - Requesting Data from API Endpoint
Hacker News - Formatting Stories
Hacker News - Creating Separate Pages for Stories
Hacker News - Formatting Comments
Hacker News - Building a Store
Hacker News - Toggling Stories in and out of Favorites
Hacker News - Building the Favorites Page
Certificate of Completion

  Write a Review

JavaScript Deep Dive

Go to Paid Course