The Complete JavaScript Course 2019: Build Real Projects!

The Complete JavaScript Course 2019: Build Real Projects!
The Complete JavaScript Course 2019: Build Real Projects!
English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 28 Hours | 13.6 GB

Master JavaScript with the most complete course on the market! Projects, challenges, quizzes, ES6+, OOP, AJAX, Webpack

This is a truly complete JavaScript course, that goes beyond what other JavaScript courses out there teach you.

I will take you from a complete JavaScript beginner to an advanced developer. You will not just learn the JavaScript language itself, you will also learn how to program. How to solve problems. How to structure and organize code using common JavaScript patterns.

Come with me on a journey with the goal of truly understanding the JavaScript language. And I explain everything on the way with great detail!

You will learn “why” something works in JavaScript, not just “how”. Because in the modern JavaScript world of today, you need more than just knowing how something works. You need to debug code, you need to understand code, you need to be able to think about code.

To achieve our goal together, the course contains coding sessions, coding challenges, theory lectures, real-world projects and a final course exam.

This course is different because it’s not just about writing code, it’s also about how and why code works the way it does. Because it’s the perfect mix between theory and practice. Because it focuses not only on small coding examples, but also on real-world projects and use cases.

So, by the end of the course, you will be a capable JavaScript developer, able to write, understand and debug JavaScript code using all the powerful features the language offers to us.

Here is exactly what we cover in this course:

  • All the JavaScript and programming fundamentals: things like variables, data types, boolean logic, if/else statements, loops, functions, objects, arrays, and more.
  • Everything you need to know in order to gain a deep understanding of how JavaScript works behind the scenes: execution contexts, hoisting, scoping, the ‘this’ keyword, and more.
  • How to make JavaScript code interact with webpages: DOM manipulation. Learn how to select and change webpage elements, create new elements and handle DOM events.
  • Complex JavaScript features such as function constructors, prototypal inheritance, first-class functions, closures, the bind and apply methods, and more.
  • We are going to code 3 beautiful real-world apps to apply our knowledge and learn new concepts (I provide the starter HTML and CSS code for these projects).
  • Learn how to organize and structure your code using modules and functions, how to create data privacy and encapsulation, and why that’s so important.
  • What’s new in the most modern version of JavaScript: new features of ES6 / ES2015.
  • Asynchronous JavaScript: the event loop, promises, async/await, AJAX calls and APIs.
  • Modern JavaScript in 2019: Learn how to set up a modern development workflow with NPM, Webpack, Babel and ES6 modules.

What you’ll learn

  • Go from a total beginner to an advanced JavaScript developer
  • Code 3 beautiful real-world apps with both ES5 and ES6+ (no boring toy apps)
  • JavaScript and programming fundamentals: variables, boolean logic, if/else, loops, functions, arrays, etc.
  • Complex features like the ‘this’ keyword, function constructors, prototypal inheritance, first-class functions, closures
  • Asynchronous JavaScript: The event loop, promises, async/await, AJAX and APIs
  • Modern JavaScript for 2019: NPM, Webpack, Babel and ES6 modules
  • A true understanding of how JavaScript works behind the scenes
  • What’s new in ES6: arrow functions, classes, default and rest parameters, etc.
  • Practice your new skills with coding challenges (solutions included)
  • Organize and structure your code using JavaScript patterns like modules
  • Get friendly and fast support in the course Q&A
  • Downloadable lectures, code and design assets for all projects
Table of Contents

Course Introduction
1 Welcome to the Course!
3 Setting up Our Tools

JavaScript Language Basics
4 Section Intro
5 Coding Challenge 1 Solution
6 If else Statements
7 Boolean Logic
8 The Ternary Operator and Switch Statements
9 Truthy and Falsy Values and Equality Operators
10 Coding Challenge 2
11 Coding Challenge 2 Solution
12 Functions
13 Function Statements and Expressions
14 Arrays
15 Download the Code
16 Coding Challenge 3
17 Coding Challenge 3 Solution
18 Objects and Properties
19 Objects and Methods
20 Coding Challenge 4
21 Coding Challenge 4 Solution
22 Loops and Iteration
23 Coding Challenge 5
24 Coding Challenge 5 Solution, Part 1
25 Coding Challenge 5 Solution, Part 2
26 Let’s start coding!
27 JavaScript Versions ES5, ES6 ES2015 and ES6+
28 A Brief Introduction to JavaScript
29 Variables and Data Types
30 Variable Mutation and Type Coercion
31 Basic Operators
32 Operator Precedence
33 Coding Challenge 1

How JavaScript Works Behind the Scenes
34 Section Intro
35 Download the Code
36 How Our Code Is Executed JavaScript Parsers and Engines
37 Execution Contexts and the Execution Stack
38 Execution Contexts in Detail Creation and Execution Phases and Hoisting
39 Hoisting in Practice
40 Scoping and the Scope Chain
41 The ‘this’ Keyword
42 The ‘this’ Keyword in Practice

JavaScript in the Browser DOM Manipulation and Events
43 Section Intro
44 Creating a Game Initialization Function
45 Finishing Touches State Variables
46 Coding Challenge 6
47 Coding Challenge 6 Solution, Part 1
48 Coding Challenge 6 Solution, Part 2
49 Coding Challenge 6 Solution, Part 3
50 Download the Code
51 The DOM and DOM Manipulation
52 Minute HTML and CSS Crash Course
53 Project Setup and Details
54 First DOM Access and Manipulation
55 Events and Event Handling Rolling the Dice
56 Updating Scores and Changing the Active Player
57 Implementing Our ‘Hold’ Function and the DRY Principle

Advanced JavaScript Objects and Functions
58 Section Intro
59 Immediately Invoked Function Expressions (IIFE)
60 Closures
61 Bind, Call and Apply
62 Coding Challenge 7
63 Coding Challenge 7 Solution, Part 1
64 Coding Challenge 7 Solution, Part 2
65 Download the Code
66 Everything Is an Object Inheritance and the Prototype Chain
67 Creating Objects Function Constructors
68 The Prototype Chain in the Console
69 Creating Objects Object.create
70 Primitives vs. Objects
71 First Class Functions Passing Functions as Arguments
72 First Class Functions Functions Returning Functions

Putting It All Together The Budget App Project
73 Section Intro
74 Adding a New Item to Our Budget Controller
75 Adding a New Item to the UI
76 Clearing Our Input Fields
77 Updating the Budget Controller
78 Updating the Budget Budget Controller
79 Updating the Budget UI Controller
80 Project Planning and Architecture Step 2
81 Event Delegation
82 Setting up the Delete Event Listener Using Event Delegation
83 Deleting an Item from Our Budget Controller
84 Download the Code
85 Deleting an Item from the UI
86 Project Planning and Architecture Step 3
87 Updating the Percentages Controller
88 Updating the Percentages Budget Controller
89 Updating the Percentages UI Controller
90 Formatting Our Budget Numbers String Manipulation
91 Displaying the Current Month and Year
92 Finishing Touches Improving the UX
93 We’ve Made It! Final Considerations
94 Project Setup and Details
95 Project Planning and Architecture Step 1
96 Implementing the Module Pattern
97 Setting up the First Event Listeners
98 Reading Input Data
99 Creating an Initialization Function
100 Creating Income and Expense Function Constructors

Next Generation JavaScript Intro to ES6 ES2015
101 Section Intro
102 Arrays in ES6 ES2015
103 The Spread Operator
104 Rest Parameters
105 Default Parameters
106 Maps
107 Classes
108 Classes with Subclasses
109 Coding Challenge 8
110 Coding Challenge 8 Solution
111 Download the Code
112 What’s new in ES6 ES2015
113 Variable Declarations with let and const
114 Blocks and IIFEs
115 Strings in ES6 ES2015
116 Arrow Functions Basics
117 Arrow Functions Lexical ‘this’ Keyword
118 Destructuring

Asynchronous JavaScript Promises, AsyncAwait and AJAX
119 Section Intro
120 An Example of Asynchronous JavaScript
121 Understanding Asynchronous JavaScript The Event Loop
122 The Old Way Asynchronous JavaScript with Callbacks
123 From Callback Hell to Promises
124 From Promises to AsyncAwait
125 AJAX and APIs
126 Making AJAX Calls with Fetch and Promises
127 Making AJAX Calls with Fetch and AsyncAwait

Modern JavaScript Using ES6, NPM, Babel and Webpack
128 Section Intro
129 Planning our Project Architecture with MVC
130 How ES6 Modules Work
131 Making our First API Calls
132 Building the Search Model
133 Building the Search Controller
134 Building the Search View – Part 1
135 Building the Search View – Part 2
136 Rendering an AJAX Loading Spinner
137 Implementing Search Results Pagination
138 Building the Recipe Model – Part 1
139 Project Overview
140 Building the Recipe Controller
141 Building the Recipe Model – Part 2
142 Building the Recipe View – Part 1
143 Building the Recipe View – Part 2
144 Updating Recipe Servings
145 Building the Shopping List Model
146 Building the Shopping List View
147 Building the Shopping List Controller
148 Building the Likes Model
149 Building the Likes Controller
150 An Overview of Modern JavaScript
151 Building the Likes View
152 Implementing Persistent Data with localStorage
153 Wrapping up Final Considerations
154 A Brief Introduction to the Command Line
155 A Modern Setup Installing Node.js and NPM
156 Note Tooling Changes
157 A Modern Setup Configuring Webpack
158 A Modern Setup The Webpack Dev Server
159 A Modern Setup Babel

Final Course Exam 30 Questions to Test Your JavaScript Knowledge
160 Some Considerations Before You Start

161 Where to Go from Here
162 Be the First to Know About New Course Launches!

BONUS A Node.js Crash Course
163 A Quick Overview of Node.js
164 The Laptop Store Project, Part 1
165 The Laptop Store Project, Part 2