
The Complete JavaScript Course 2022: From Zero to Expert! | |
The modern JavaScript course for everyone! Master JavaScript with projects, challenges and theory. Many courses in one! |
|
Created by | Jonas Schmedtmann |
Language | English |
- 001 Section Intro 00:00:53
- 002 Hello World 00:05:57
- 003 A Brief Introduction to JavaScript 00:11:18
- 004 Linking a JavaScript File 00:15:55
- 005 Values and Variables 00:16:05
- 006 Practice Assignments .html
- 007 Data Types 00:19:19
- 008 let const and var 00:09:58
- 009 Basic Operators 00:19:31
- 010 Operator Precedence 00:11:19
- 011 Coding Challenge 1 00:10:28
- 012 Strings and Template Literals 00:10:58
- 013 Taking Decisions if else Statements 00:12:50
- 014 Coding Challenge 2 00:06:21
- 015 Type Conversion and Coercion 00:16:40
- 016 Truthy and Falsy Values 00:10:03
- 017 Equality Operators vs. 00:15:41
- 018 Boolean Logic 00:08:30
- 019 Logical Operators 00:10:37
- 020 Coding Challenge 3 00:15:07
- 021 The switch Statement 00:13:10
- 022 Statements and Expressions 00:06:08
- 023 The Conditional (Ternary) Operator 00:10:02
- 024 Coding Challenge 4 00:09:12
- 025 JavaScript Releases ES5 ES6 and ESNext 00:14:19
- 28627601-all-coding-challenges .pdf
- 28892184-assignments-js-fundamentals .pdf
- 30971086-theory-lectures-v2 .pdf
- 001 Section Intro 00:00:36
- 002 Activating Strict Mode 00:10:27
- 003 Functions 00:19:08
- 004 Function Declarations vs. Expressions 00:10:39
- 005 Arrow Functions 00:09:52
- 006 Functions Calling Other Functions 00:10:07
- 007 Reviewing Functions 00:15:37
- 008 Coding Challenge 1 00:18:12
- 009 Introduction to Arrays 00:21:34
- 010 Basic Array Operations (Methods) 00:12:52
- 011 Coding Challenge 2 00:09:36
- 012 Introduction to Objects 00:06:08
- 013 Dot vs. Bracket Notation 00:19:21
- 014 Object Methods 00:23:05
- 015 Coding Challenge 3 00:12:59
- 016 Iteration The for Loop 00:11:11
- 017 Looping Arrays Breaking and Continuing 00:22:02
- 018 Looping Backwards and Loops in Loops 00:11:53
- 019 The while Loop 00:11:52
- 020 Coding Challenge 4 00:15:35
- 001 Pathways and Section Roadmaps 00:04:08
- 002 Course Pathways .html
- 28628111-pathways .pdf
- 001 Section Intro 00:00:39
- 002 Section Roadmap .html
- 003 Setting up Prettier and VS Code 00:16:22
- 004 Installing Node.js and Setting Up a Dev Environment 00:11:32
- 005 Learning How to Code 00:17:42
- 006 How to Think Like a Developer Become a Problem Solver 00:10:53
- 007 Using Google StackOverflow and MDN 00:26:37
- 008 Debugging (Fixing Errors) 00:05:09
- 009 Debugging with the Console and Breakpoints 00:19:25
- 010 Coding Challenge 1 00:15:24
- external-assets-links .txt
- 001 Section Intro 00:00:40
- 002 Basic HTML Structure and Elements 00:09:32
- 003 Attributes Classes and IDs 00:13:09
- 004 Basic Styling with CSS 00:12:00
- 005 Introduction to the CSS Box Model 00:20:57
- 001 Section Intro 00:00:49
- 002 Section Roadmap .html
- 003 PROJECT 1 Guess My Number 00:08:47
- 004 Whats the DOM and DOM Manipulation 00:06:48
- 005 Selecting and Manipulating Elements 00:08:22
- 006 Handling Click Events 00:12:50
- 007 Implementing the Game Logic 00:19:33
- 008 Manipulating CSS Styles 00:08:18
- 009 Coding Challenge 1 00:11:40
- 010 Implementing Highscores 00:07:47
- 011 Refactoring Our Code The DRY Principle 00:15:05
- 012 PROJECT 2 Modal Window 00:13:21
- 013 Working With Classes 00:16:55
- 014 Handling an Esc Keypress Event 00:14:11
- 015 PROJECT 3 Pig Game 00:17:08
- 016 Rolling the Dice 00:15:58
- 017 Switching the Active Player 00:15:16
- 018 Holding Current Score 00:24:55
- 019 Resetting the Game 00:15:38
- external-assets-links .txt
- 001 Section Intro 00:01:31
- 002 Section Roadmap .html
- 003 An High-Level Overview of JavaScript 00:12:11
- 004 The JavaScript Engine and Runtime 00:13:47
- 005 Execution Contexts and The Call Stack 00:17:45
- 006 Scope and The Scope Chain 00:25:37
- 007 Scoping in Practice 00:21:13
- 008 Variable Environment Hoisting and The TDZ 00:11:00
- 009 Hoisting and TDZ in Practice 00:14:42
- 010 The this Keyword 00:06:31
- 011 The this Keyword in Practice 00:13:11
- 012 Regular Functions vs. Arrow Functions 00:18:04
- 013 Primitives vs. Objects (Primitive vs. Reference Types) 00:16:06
- 014 Primitives vs. Objects in Practice 00:14:57
- external-assets-links .txt
- 001 Section Intro 00:00:54
- 002 Section Roadmap .html
- 003 Destructuring Arrays 00:19:33
- 004 Destructuring Objects 00:19:46
- 005 The Spread Operator (...) 00:21:26
- 006 Rest Pattern and Parameters 00:19:01
- 007 Short Circuiting ( and ) 00:15:55
- 008 The Nullish Coalescing Operator ( ) 00:03:32
- 009 Logical Assignment Operators 00:11:40
- 010 Coding Challenge 1 00:14:57
- 011 Looping Arrays The for-of Loop 00:07:20
- 012 Enhanced Object Literals 00:07:02
- 013 Optional Chaining ( .) 00:16:10
- 014 Looping Objects Object Keys Values and Entries 00:10:09
- 015 Coding Challenge 2 00:14:30
- 016 Sets 00:13:18
- 017 Maps Fundamentals 00:14:03
- 018 Maps Iteration 00:12:41
- 019 Summary Which Data Structure to Use 00:09:40
- 020 Coding Challenge 3 00:09:37
- 021 Working With Strings - Part 1 00:16:53
- 022 Working With Strings - Part 2 00:21:45
- 023 Working With Strings - Part 3 00:21:41
- 024 Coding Challenge 4 00:15:15
- 025 String Methods Practice 00:16:36
- external-assets-links .txt
- 001 Section Intro 00:00:48
- 002 Section Roadmap .html
- 003 Default Parameters 00:09:17
- 004 How Passing Arguments Works Value vs. Reference 00:13:36
- 005 First-Class and Higher-Order Functions 00:05:24
- 006 Functions Accepting Callback Functions 00:15:20
- 007 Functions Returning Functions 00:06:36
- 008 The call and apply Methods 00:16:51
- 009 The bind Method 00:21:33
- 010 Coding Challenge 1 00:18:47
- 011 Immediately Invoked Function Expressions (IIFE) 00:07:52
- 012 Closures 00:19:48
- 013 More Closure Examples 00:15:30
- 014 Coding Challenge 2 00:05:25
- external-assets-links .txt
- 001 Section Intro 00:00:53
- 002 Section Roadmap .html
- 003 Simple Array Methods 00:16:37
- 004 The new at Method 00:06:04
- 005 Looping Arrays forEach 00:13:46
- 006 forEach With Maps and Sets 00:05:32
- 007 PROJECT Bankist App 00:09:48
- 008 Creating DOM Elements 00:18:44
- 009 Coding Challenge 1 00:08:31
- 010 Data Transformations map filter reduce 00:04:40
- 011 The map Method 00:15:40
- 012 Computing Usernames 00:12:14
- 013 The filter Method 00:06:19
- 014 The reduce Method 00:20:57
- 015 Coding Challenge 2 00:09:56
- 016 The Magic of Chaining Methods 00:19:40
- 017 Coding Challenge 3 00:03:57
- 018 The find Method 00:06:47
- 019 Implementing Login 00:24:18
- 020 Implementing Transfers 00:20:54
- 021 The findIndex Method 00:12:35
- 022 some and every 00:15:11
- 023 flat and flatMap 00:09:32
- 024 Sorting Arrays 00:21:55
- 025 More Ways of Creating and Filling Arrays 00:20:33
- 026 Summary Which Array Method to Use 00:06:24
- 027 Array Methods Practice 00:32:21
- 028 Coding Challenge 4 00:23:48
- external-assets-links .txt
- 001 Section Intro 00:00:50
- 002 Section Roadmap .html
- 003 Converting and Checking Numbers 00:16:46
- 004 Math and Rounding 00:18:14
- 005 The Remainder Operator 00:10:56
- 006 Numeric Separators 00:06:57
- 007 Working with BigInt 00:11:18
- 008 Creating Dates 00:12:55
- 009 Adding Dates to Bankist App 00:22:21
- 010 Operations With Dates 00:15:27
- 011 Internationalizing Dates (Intl) 00:17:18
- 012 Internationalizing Numbers (Intl) 00:19:06
- 013 Timers setTimeout and setInterval 00:13:53
- 014 Implementing a Countdown Timer 00:28:31
- external-assets-links .txt
- 001 Section Intro 00:01:04
- 002 Section Roadmap .html
- 003 PROJECT Bankist Website 00:08:49
- 004 How the DOM Really Works 00:10:36
- 005 Selecting Creating and Deleting Elements 00:20:28
- 006 Styles Attributes and Classes 00:21:54
- 007 Implementing Smooth Scrolling 00:15:56
- 008 Types of Events and Event Handlers 00:10:33
- 009 Event Propagation Bubbling and Capturing 00:05:03
- 010 Event Propagation in Practice 00:17:46
- 011 Event Delegation Implementing Page Navigation 00:18:49
- 012 DOM Traversing 00:14:35
- 013 Building a Tabbed Component 00:24:08
- 014 Passing Arguments to Event Handlers 00:18:43
- 015 Implementing a Sticky Navigation The Scroll Event 00:07:55
- 016 A Better Way The Intersection Observer API 00:24:01
- 017 Revealing Elements on Scroll 00:12:39
- 018 Lazy Loading Images 00:18:30
- 019 Building a Slider Component Part 1 00:23:16
- 020 Building a Slider Component Part 2 00:19:35
- 021 Lifecycle DOM Events 00:09:26
- 022 Efficient Script Loading defer and async 00:13:30
- external-assets-links .txt
- 001 Section Intro 00:01:07
- 002 Section Roadmap .html
- 003 What is Object-Oriented Programming 00:20:55
- 004 OOP in JavaScript 00:10:08
- 005 Constructor Functions and the new Operator 00:14:19
- 006 Prototypes 00:14:36
- 007 Prototypal Inheritance and The Prototype Chain 00:10:58
- 008 Prototypal Inheritance on Built-In Objects 00:14:47
- 009 Coding Challenge 1 00:07:27
- 010 ES6 Classes 00:12:57
- 011 Setters and Getters 00:13:15
- 012 Static Methods 00:06:24
- 013 Object.create 00:10:56
- 014 Coding Challenge 2 00:06:00
- 015 Inheritance Between Classes Constructor Functions 00:21:03
- 016 Coding Challenge 3 00:10:37
- 017 Inheritance Between Classes ES6 Classes 00:10:46
- 018 Inheritance Between Classes Object.create 00:08:53
- 019 Another Class Example 00:10:44
- 020 Encapsulation Protected Properties and Methods 00:06:47
- 021 Encapsulation Private Class Fields and Methods 00:16:11
- 022 Chaining Methods 00:04:43
- 023 ES6 Classes Summary 00:07:12
- 024 Coding Challenge 4 00:08:54
- external-assets-links .txt
- 001 Section Intro 00:00:58
- 002 Section Roadmap .html
- 003 Project Overview 00:05:02
- 004 How to Plan a Web Project 00:17:41
- 005 Using the Geolocation API 00:08:16
- 006 Displaying a Map Using Leaflet Library 00:13:48
- 007 Displaying a Map Marker 00:19:54
- 008 Rendering Workout Input Form 00:16:42
-
00:09:28 - 010 Refactoring for Project Architecture 00:24:05
- 011 Managing Workout Data Creating Classes 00:16:18
- 012 Creating a New Workout 00:34:06
- 013 Rendering Workouts 00:24:19
- 014 Move to Marker On Click 00:16:32
- 015 Working with localStorage 00:25:31
- 016 Final Considerations 00:05:41
- external-assets-links .txt
- 001 Section Intro 00:00:55
- 002 Section Roadmap .html
- 03 Asynchronous JavaScript AJAX and APIs 0 00:17:57
- 004 IMPORTANT API URL Change .html
- 005 Our First AJAX Call XMLHttpRequest 00:19:10
- 006 OPTIONAL How the Web Works Requests and Responses 00:13:38
- 007 Welcome to Callback Hell 00:13:52
- 008 Promises and the Fetch API 00:09:25
- 009 Consuming Promises 00:09:24
- 010 Chaining Promises 00:09:13
- 011 Handling Rejected Promises 00:16:13
- 012 Throwing Errors Manually 00:15:24
- 013 Coding Challenge 1 00:16:32
- 014 Asynchronous Behind the Scenes The Event Loop 00:17:53
- 015 The Event Loop in Practice 00:09:15
- 016 Building a Simple Promise 00:20:17
- 017 Promisifying the Geolocation API 00:13:26
- 018 Coding Challenge 2 00:15:53
- 019 Consuming Promises with Async Await 00:15:06
- 020 Error Handling With try...catch 00:10:22
- 021 Returning Values from Async Functions 00:14:39
- 022 Running Promises in Parallel 00:10:56
- 023 Other Promise Combinators race allSettled and any 00:13:19
- 024 Coding Challenge 3 00:17:30
- external-assets-links .txt
- 001 Section Intro 00:00:47
- 002 Section Roadmap .html
- 003 An Overview of Modern JavaScript Development 00:06:39
- 004 An Overview of Modules in JavaScript 00:15:01
- 005 Exporting and Importing in ES6 Modules 00:22:38
- 006 Top-Level await (ES2022) 00:14:44
- 007 The Module Pattern 00:10:20
- 008 CommonJS Modules 00:04:24
- 009 A Brief Introduction to the Command Line 00:12:27
- 010 Introduction to NPM 00:18:40
- 011 Bundling With Parcel and NPM Scripts 00:21:39
- 012 Configuring Babel and Polyfilling 00:18:03
- 013 Review Writing Clean and Modern JavaScript 00:10:26
- 014 Lets Fix Some Bad Code Part 1 00:23:20
- 015 Declarative and Functional JavaScript Principles 00:12:25
- 016 Lets Fix Some Bad Code Part 2 00:38:09
- external-assets-links .txt
- 001 Section Intro 00:00:56
- 002 Section Roadma p .html
- 003 Project Overview and Planning (I) 00:14:21
- 004 Loading a Recipe from API 00:24:11
- 005 Rendering the Recipe 00:22:23
- 006 Listening For load and hashchange Events 00:11:02
- 007 The MVC Architecture 00:16:32
- 008 Refactoring for MVC 00:38:53
- 009 Helpers and Configuration Files 00:21:23
- 010 Event Handlers in MVC Publisher-Subscriber Pattern 00:15:08
- 011 Implementing Error and Success Messages 00:11:34
- 012 Implementing Search Results - Part 1 00:25:46
- 013 Implementing Search Results - Part 2 00:28:15
- 014 Implementing Pagination - Part 1 00:12:18
- 015 Implementing Pagination - Part 2 00:37:05
- 016 Project Planning II 00:03:13
- 17 Updating Recipe Servings 0 00:26:40
- 018 Developing a DOM Updating Algorithm 00:34:22
- 019 Implementing Bookmarks - Part 1 00:26:00
- 020 Implementing Bookmarks - Part 2 00:18:31
- 021 Storing Bookmarks With localStorage 00:18:22
- 022 Project Planning III 00:02:09
- 023 Uploading a New Recipe - Part 1 00:17:43
- 024 Uploading a New Recipe - Part 2 00:40:37
- 025 Uploading a New Recipe - Part 3 00:19:58
- 026 Wrapping Up Final Considerations 00:14:45
- external-assets-links .txt
- 001 Section Intro 00:00:44
- 002 Section Roadmap .html
- 003 Simple Deployment With Netlify 00:11:18
- 004 Setting Up Git and GitHub 00:07:39
- 005 Git Fundamentals 00:19:36
- 006 Pushing to GitHub 00:09:31
- 007 Setting Up Continuous Integration With Netlify 00:10:06
- external-assets-links .txt
- 001 Where to Go from Here 00:03:00
-
002 My Other Courses Updates
Congratulations on finishing the course!
1 I really hope you enjoyed this course, and that you want to continue your learning journey with me. If so, then I have more courses for you
If you enjoyed AJAX and APIs, why not learn how to build your own API just like the forkify API? If that sounds like fun, please check out my Node.js Bootcamp
If you enjoyed the design of the projects, why not learn how to write amazing CSS yourself? My beginner HTML+CSS course will be perfect your you! It's entirely project-based, and the final project is absolutely stunning. Or if you already know some CSS, check out my Advanced CSS course (rated 4.8!!)
2 Course updates
I will be creating more courses in the future! If you want to be the first one to hear about them, please click below:
This will give you access to discounts for all my future courses, and to my monthly newsletter, full-packed with resources, tutorials, and articles that will be helpful for your coding journey.
3 Enjoyed the course? If so, please leave a review
I would really appreciate that! It's very helpful for me and for other students who are deciding if this is the right course for them too.
Thank you very much for your help and for being an amazing student of this course, it was nice having you!
See you next time,
Jonas
.html
.
-
001 Access the Old Course .html
Welcome to version 1 of this course!
If you need access to the old version of this course for some reason, you have two options!
Option 1: The old course will be available forever, in a new private course. This is the best option! Just click this link and enroll
Option 2: You can download it from this lecture. For each section, there is a ZIP file containing both videos (MP4 files) and English captions (VTT files). You can find them at the end of this lecture
Here is some more information about the download:
The total download size is 2.8 GB, so make sure you have a good internet connection
Start by downloading the course-structure PDF for an overview of all sections and all download sizes
Course materials and code are still on GitHub (v1 branch)
As mentioned earlier, I recommend that you abandon the old course as soon as possible, and focus on the new material. You will find a migration guide at the beginning of the course
If you have any question about the old course material, please post it below this lecture
If you want to watch the videos with captions, I suggest watching them with the free VLC video player, where captions will load automatically.
- 28642021-Section-01-Course-Introduction .zip
- 28642637-Section-10-Conclusion .zip
- 28642639-Section-04-DOM-Manipulation .zip
- 28642641-Section-11-Node.js-Crash-Course .zip
- 8642643-Section-06-The-Budget-App-Project 2 .zip
- 28642645-Section-08-Asynchronous-JavaScript .zip
- 28642647-Section-07-Intro-to-ES6-ES2015 .zip
- 28642651-Section-09-Forkify-Project .zip
- 28642653-Section-02-JavaScript-Basics .zip
- 28642655-Section-03-How-JavaScript-Works .zip
- 28642657-Section-05-Objects-and-Functions .zip
- 28643157-course-structure .pdf
No comments:
Post a Comment