*NEW* JavaScript Complete Grandmaster 2020. Ongoing updates

*NEW* JavaScript Complete Grandmaster 2020. Ongoing updates

English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 12.5 Hours | 11.5 GB

Beginner to Advanced. Proven hands on teaching method. Comprehensive. Practical & current. Everything you need to know.

JavaScript is the #1 scripting language of the web, where a lot of the dynamic and styled content is handled by JavaScript in the background. But before using this language to create dynamic websites, you need to have a firm grasp of how it works behind the scenes.

By the end of this course, you’ll be able to “speak” JavaScript by gaining an understanding of how the browser uses it, what variables, objects and functions are, what different data types there are and how to manipulate content on a website. We dig deeper and create our own dialog methods from scratch. We learn about the arrow syntax, Math.random() function, looping through objects and arrays, working with dates. We look at prototypes, JS Engines, the Execution Stack and a whole bunch more!

Through practical examples, this course helps you understand JavaScript piece by piece. And we use the latest and best features of JavaScript along the way so you can stay ahead of the pack.

Successful programmers know more than rote learning a few lines of JavaScript code. They also know the fundamentals of how the language works, its strength and weaknesses, and how the machine uses what they write to create amazing and functional websites.

I want you to become a successful programming Grandmaster.

I want you to be able to apply JavaScript to your webpage.

This course is perfect for you.

Hi there, my name is Clyde and together we’re going to discover JavaScript and apply it to practical situations. We’re going to practice and learn and emerge confident to tackle any challenges modern programs and websites throw at us.

After completing a few (unrelated) university degrees, and post grad studies, I developed a fascination for web design and software languages. For several years I have immersed myself in this. I spent a fair bit on top courses and went on to apply the knowledge practically. I recognized gaps in some of the courses I’ve taken and hence my course teaches what I wish I was taught. My intention is to share the knowledge with you in an easy to follow manner, so that we can benefit together. You benefit form learning, and I from sharing in your success.

This course is for beginners and for intermediates. If you know the basics, you may want to skip the first few sections.

Download all course content

I allow you to download all my course content to your computer for offline access. I remember how important this was to me when I was first starting out. Enjoy!

We dig deeper

You won’t just learn a few pieces of code, you will also learn the fundamentals of programming itself. This is important as all programming languages are built from the same foundation. Learning core concepts of JavaScript will put you on the path of becoming an Grandmaster programmer in any language.

You will learn “why” things work and not just “how”. Understanding the fundamentals of JavaScript is important as it will allow you to write more complicated code. And trust me, every programming encounters bugs, and without understanding the fundamentals you will be totally lost.

Practice makes perfect

Theory is theory … but there’s nothing like getting behind your computer and typing in code. That’s why we will be coding, laughing and pulling out our hair together as we code real life websites and exercises during this course.

What you’ll learn

  • Latest JavaScript (including ES6/ES7/ES8/ES9/ES10/ESNext)
  • Understand what JavaScript can do for you and how to use it
  • From beginner to expert (advanced +) – become a freelancer web developer
  • Ongoing updates to keep you current
  • Learn how HTML, CSS and JavaScript relate to each other
  • If you have knowledge of machine languages and the fundamentals of JavaScript, start at section 4
  • You will emerge an expert
  • How to write JavaScript in the console (very useful when you’re testing code)
  • Introduction to machine language, JavaScript engines, IDEs
  • How to use a text editor (both online ones and offline ones) that are completely free
  • Gives you depth of knowledge to boost your ability and confidence
  • Forum support from me
  • All the techniques used by professional programmers
Table of Contents

Programming, machine code and interpretors
1 Introduction
2 Machine Code – Intro
3 Machine Code – A Little Deeper
4 Processors
5 Low Level Languages
6 High Level Languages
7 Step Back – a comparison between Low Level and High Level Languages
8 Writing JavaScript – How How How
9 Compiling
10 Interpretors
11 Compiling vs Interpreting
12 Who should do this section
13 Intermediate
14 Recap Compiling, Interpreting and JavaScript
15 Outro
16 Programming – what is it
17 English Analogy
18 Order Matters
19 GIGO
20 Quick Recap
21 Motivation
22 Hundreds of Languages

HTML, CSS, and JavaScript (and bonus ECMAScript)
23 Who should do this section
24 BONUS PART 2 – ECMAScript and ES6
25 Section Introduction
26 Relationship between HTML, CSS and JavaScript
27 Practical Example Browsers Default CSS Styles
28 Practical Example Changing Button Text
29 Scripting Language
30 Is JavaScript a ‘safe’ language
31 Java vs JavaScript
32 BONUS PART 1 – ECMAScript and ES6

JavaScript Engines
33 Section Introduction
34 Engines – Introduction
35 Why are there different JS Engines
36 V8 Engine
37 JavaScript lives in different environments
38 Frontend vs Backend
39 Outro

Bonus Section – Writing JavaScript in the Console
40 Section introduction
41 Console – Assert
42 Console – Count, Dir, Group, Time, Table
43 Substitutions
44 Substitutions vs Template Literals
45 Concatenation vs Template Literals
46 Console – Introduction
47 Alert Function – Introduction
48 Console Log
49 Browser Object Model (BOM)
50 Window Object – Playaround
51 Can we access a new Window object with JavaScript
52 Deprecated Window Properties
53 Console – Log, Info, Warn and Error

Bonus Section – Building a Custom Polyfill
54 Introduction
55 Scopes Are Important
56 Custom forEach() polyfill – Intro
57 Custom forEach() polyfill – first step
58 Wait …
59 Custom forEach() polyfill – callback function
60 What is THIS
61 Custom forEach() polyfill – final
62 Outro
63 What is a browser
64 Wanna know more
65 Do browsers follow a set of common rules
66 Before you continue …
67 What is a polyfill
68 Testing whether the forEach() method exists in our Browser
69 What is forEach()
70 Practical example of forEach()

IDE and Text Editors – Introduction
71 Before you begin
72 Order Matters – The Problem
73 Order Matters – Why did the element not load
74 Order Matters – Fixing the Problem
75 External JavaScript and the Async Attribute
76 IDEs – Intro
77 What are 3 cool extensions you can use with VSCode
78 Local Server
79 How to include JavaScript in your HTML
80 Script Tag – Example of Inline and External
81 Inline JavaScript example within the head tag and body tag
82 Order Matters
83 Trick Question – What do you expect to happen

Syntax
84 Syntax – Introduction
85 Properties
86 Number date type – Floating Points
87 Number data type 0.1 + 0.2
88 Number data type – Base 10 vs Base 2
89 Number data type – Number(), Infinity and more
90 Null and Undefined data types
91 Escaping
92 Operators – Intro
93 Operators – Binary vs Unary
94 Coercion – Introduction
95 Syntax – What is it
96 Coercion – String, Number and Boolean
97 Syntax Parser
98 White Space
99 Semicolons and the ‘return’ statement
100 Comments
101 Data Types and the typeof() method
102 Primitive Data Types – An Example
103 String data type = Click Me button example

Bonus Section – Dialog Boxes in JavaScript
104 Alert – creating an onclick event for a button
105 Alert – writing text to a screen after the alert has been acknowledged
106 Confirm – conditional if statement
107 Prompt
108 Alert – custom design with pure HTML, CSS and JS

Variables
109 Variables – Section Intro
110 Scope – What is it
111 Local vs Global Scope, and Function vs Block Scope
112 Scope – VAR vs LET and a NESTED block
113 Bonus using DevTools to determine scope
114 Variables – what are they
115 Variable creation Declare, Initialize and Assign
116 Identifiers
117 VAR – the old way to declare a variable
118 LET – the new way to declare a variable
119 CONST – the new way to declare a constant variable
120 CONST – try and catch
121 Variables – quick recap

Bonus Section – Dates
122 Date Object
123 Why is the new keyword important when instantiating the Date object
124 ways to create a date object in JavaScript
125 Get methods on the date object
126 Set methods on the date object
127 practical examples birthday, UTC and re-formatting

Objects
128 Section Introduction
129 Creating objects – 2. Constructor Function Intro
130 Creating objects – 2. Constructor Function Example
131 Pause quickly
132 Construction function vs object literal – part 1
133 Construction function vs object literal – instantiation vs singleton approach
134 Construction function vs object literal – init function and which to choose
135 Creating objects – 3. Object.create()
136 Examples of Object.create()
137 Another example of Object.create()
138 Creating objects – 4. Classes
139 Objects – Introduction
140 Understanding classes starts with the constructor function
141 Class example
142 Objects recap and an example of how objects can be passed into other functions
143 Bonus Lecture JavaScript Object Model
144 namevalue pairs
145 Objects and data – how they relate to each other
146 Objects vs Variables
147 Properties and methods
148 Accessing properties
149 Creating objects – 4 ways
150 Creating objects – 1. Object Literal

Arrays and Loops
151 Arrays intro
152 Creating arrays
153 Push and pop
154 types of array methods
155 Mutator, Accessor and Iterator
156 Why is being able to loop through data important
157 Looping through arrays
158 Looping through objects
159 Bonus Object Shapes (Advanced)

Prototypes
160 Section Introduction
161 Prototype example and isPrototypeOf() method
162 What is a prototype
163 Prototype vs proto
164 Prototype vs proto Part 2
165 Prototype tree and null
166 Lets prove the prototype tree

Functions
167 Section Introduction
168 Function Expressions vs Declarations – Examples
169 Functions are like values
170 New Arrow Syntax
171 What does No binding of this mean
172 Recap – variables, objects and functions
173 Introduction to the toLowerCase() function
174 Introduction to the Array.from() method
175 How does the Array.from() method work
176 Introduction to the indexOf() method
177 Using indexOf() with Arrrays
178 What is a function
179 Using indexOf() with Strings
180 Invoking a function vs returning a function
181 Cool example click a paragraph and make text change
182 Cool example (advanced) click button and display random quotes
183 Explanation of Math.Random()
184 Return keyword
185 Return keyword and the arrow syntax
186 There are 2 types of functions

Bonus Section – this, execution context and lexical environments
187 Bonus Section Introduction
188 Call(), Apply() and Bind() methods
189 What is this
190 Global Execution Context
191 Global vs Functional Execution Context
192 Execution Stack
193 Execution Stack – Example
194 What is a lexical environment
195 Lexical environment – advanced example
196 rules for determining what this refers to

Teaser – How does JavaScript effect the Critical Rendering Path
197 Introduction
198 Quick caveat
199 Placing JavaScript at the bottom of your file
200 Using the Async attribute
201 We’ll stop here
202 Summary of where we can place our JS to improve the CRP
203 Outro
204 Side note
205 What is the CRP
206 How browsers used to work
207 How browsers today work
208 Is AJAX still relevant today
209 Render Blocking Resources – Intro
210 JavaScript and the DOM
211 JavaScript is render blocking

Closing Comments
212 Well Done
213 Where to next