Course Highlights
  • How the JavaScript programming language works, all the way from the basics to the advanced concepts 
  • Basic computer science concepts like variables, data types, functions, conditionals, loops, and much more.
  • How to build real-world web apps using the JavaScript programming language
Curriculum

36 Topics
Variables Quiz
Types & Conditionals Quiz
Functions Quiz
Welcome to the course!
How to use scrims
Start Using JavaScript
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
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
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

40 Topics
Objects & Maps Quiz
Arrays & Sets Quiz
Classes Quiz
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
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
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()

18 Topics
DOM Quiz
Async JavaScript Quiz
Intro: the 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
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

28 Topics
Essential Concepts Quiz
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
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
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

  Write a Review

JavaScript Deep Dive

Go to Free Course