Course Highlights
  • 225+ lectures and 12.5+ hours of well-structured content
  • Latest JavaScript (including ES6/ES7/ES8/ES9/ES10/ES13/ESNext)
  • Understand what JavaScript can do for you and how to use it
  • From beginner to expert (advanced +). Become a freelancer web developer
  • *** Download. Videos can be downloaded for offline viewing
  • 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
Curriculum

28 Topics
Introduction
Who should do this section?
Programming - what is it?
English Analogy
All programs have to be detailed
Order Matters
Does code have to be written in order from top-to-bottom ALL the time?
GIGO
More about GIGO
Quick Recap
Hundreds of Languages
What is a programming language?
Machine Code - Intro
Machine Code - A Little Deeper
Processors
Low Level Languages
High Level Languages
Step Back - a comparison between Low Level and High Level Languages
Writing JavaScript - How How How
Compiling
Interpretors
Compiling vs Interpreting
Compiled vs Interpreted Code
Intermediate
Motivation
Recap: Compiling Interpreting and JavaScript
Programming Quiz
Outro

12 Topics
Who should do this section?
Section Introduction
Relationship between HTML CSS and JavaScript
Practical Example: Browsers Default CSS Styles
Practical Example: Changing Button Text
Scripting Language
Is JavaScript a 'safe' language?
Java vs JavaScript
PART 1 - ECMAScript and ES6
PART 2 - ECMAScript and ES6
JavaScript and ECMAScript
HTML CSS and JavaScript Quiz

11 Topics
Section Introduction
Engines - Introduction
Why are there different JS Engines?
JavaScript can be implemented/executed in any language
V8 Engine
Who uses the V8 engine?
JavaScript lives in different environments
Frontend vs Backend
Outro
Engines Quiz
Keep going

2 Topics
Programming Fundaments Test
Remember - when you write JavaScript you need to be clear and detailed

17 Topics
Section introduction
Console - Introduction
Alert Function - Introduction
Writing some code in your first JavaScript file
Console Log
Statements vs Expressions
Browser Object Model (BOM)
Window Object - Playaround
Can we access a new Window object with JavaScript?
Deprecated Window Properties
Console - Log Info Warn and Error
Console - Assert
Console - Count Dir Group Time Table
Substitutions
Substitutions vs Template Literals
Concatenation vs Template Literals
JavaScript Console Quiz

17 Topics
Before you begin
IDEs - Intro
What are 3 cool extensions you can use with VSCode?
Local Server
How to include JavaScript in your HTML
Where do you write your JavaScript code?
What HTML tag does JavaScript have to be written in?
<Script> Tag - Example of Inline and External
How to include an external JavaScript file?
Inline JavaScript example within the <head> tag and <body> tag
Order Matters
Trick Question - What do you expect to happen?
Order Matters - The Problem
Order Matters - Why did the element not load?
Order Matters - Fixing the Problem
External JavaScript and the Async Attribute
IDE Quiz

23 Topics
Syntax - Introduction
Syntax - What is it?
Syntax Parser
White Space
Semicolons and the 'return' statement
Comments
Data Types and the typeof() method
Primitive Data Types - An Example
String data type = "Click Me" button example
Properties
Number date type - Floating Points
Number data type: 0.1 + 0.2
Number data type - Base 10 vs Base 2
Number data type - Number() Infinity and more
Null and Undefined data types
Why is typeof(null) an object ???
Escaping
Operators - Intro
Operators - Binary vs Unary
Coercion - Introduction
Coercion - String Number and Boolean
Syntax Quiz
Coercion Assignment

1 Topic
Writing JavaScript Test

14 Topics
Variables - Section Intro
Variables - what are they?
Variable creation: Declare Initialize and Assign
Identifiers
VAR - the old way to declare a variable
LET - the new way to declare a variable
CONST - the new way to declare a constant variable
CONST - try and catch
Variables - quick recap
Scope - What is it?
Local vs Global Scope and Function vs Block Scope
Scope - VAR vs LET and a NESTED block
Using DevTools to determine scope
Variables Quiz

5 Topics
Alert - creating an onclick event for a button
Alert - writing text to a screen after the alert has been acknowledged
Confirm - conditional if statement
Prompt
Alert - custom design with pure HTML CSS and JS

8 Topics
Date Object
Why is the new keyword important when instantiating the Date object?
Epoch time
4 ways to create a date object in JavaScript
Get methods on the date object
Set methods on the date object
3 practical examples: birthday UTC and re-formatting
Dates Quiz

25 Topics
Section Introduction
Objects - Introduction
Is a "string primitive" also an object?
name:value pairs
Objects and data - how they relate to each other
Objects vs Variables
Properties and methods
Accessing properties
Creating objects - 4 ways
Creating objects - 1. Object Literal
Creating objects - 2. Constructor Function Intro
Creating objects - 2. Constructor Function Example
Pause quickly
Construction function vs object literal - part 1
Construction function vs object literal - instantiation vs singleton approach
Construction function vs object literal - init function and which to choose
Creating objects - 3. Object.create()
Examples of Object.create()
Another example of Object.create()
Creating objects - 4. Classes
Understanding classes starts with the constructor function
Class example
Objects recap and an example of how objects can be passed into other functions
JavaScript Object Model
Objects Quiz

4 Topics
// Coding Exercise: Website Member Creation: Part 1
// Coding Exercise: Website Member Creation: Part 2
// Coding Exercise: Website Member Creation: Part 3
Congratulations!

18 Topics
Introduction
What is a browser?
Wanna know more?
Do browsers follow a set of common rules?
Before you continue ...
What is a polyfill?
Testing whether the forEach() method exists in our Browser
What is forEach()
Practical example of forEach()
Scopes Are Important
Custom forEach() polyfill - first step
Custom forEach() polyfill - Intro
Wait ...
Custom forEach() polyfill - callback function
What is THIS
Custom forEach() polyfill - final
Outro
Polyfills

10 Topics
Arrays intro
Creating arrays
Push and pop
3 types of array methods
Mutator Accessor and Iterator
Why is being able to loop through data important
Looping through arrays
Looping through objects
Object Shapes (Advanced)
Arrays and Loops - Quiz

9 Topics
Section Introduction
Prototype example and isPrototypeOf() method
What is a prototype
Prototype vs __proto__
Prototype vs __proto__ Part 2
Prototype vs this
Prototype tree and null
Lets prove the prototype tree
Prototype - Quiz

24 Topics
Section Introduction
What is a function?
Invoking a function vs returning a function
Cool example: click a paragraph and make text change
Are semi-colons required?
Cool example (advanced): click button and display random quotes
Explanation of Math.Random()
Return keyword
Return keyword and the arrow syntax
There are 2 types of functions
Function Expressions vs Declarations - Examples
Function Declaration vs Function Expression
Functions are like values
New Arrow Syntax
What does "No binding of this" mean?
Recap - variables objects and functions
Introduction to the toLowerCase() function
Introduction to the Array.from() method
How does the Array.from() method work?
Introduction to the indexOf() method
Using indexOf() with Arrrays
Using indexOf() with Strings
Promises
Functions - Quiz

12 Topics
Section Introduction
Execution and Lexical Environments
What is this?
Global Execution Context
Global vs Functional Execution Context
Execution Stack
Execution Stack - Example
What is a lexical environment?
Lexical environment - advanced example
6 rules for determining what this refers to
Call() Apply() and Bind() methods
This Execution Context and Lexical Environments - Quiz

15 Topics
Introduction
Side note
What is the CRP
How browsers used to work
How browsers today work
Is AJAX still relevant today?
Render Blocking Resources - Intro
JavaScript and the DOM
JavaScript is render blocking
Quick caveat
Placing JavaScript at the bottom of your file
Using the Async attribute
We'll stop here
Summary of where we can place our JS to improve the CRP
Outro

2 Topics
Well Done
Bonus lecture - where to next?

  Write a Review

*UPDATED* JavaScript Complete Grandmaster 2024

Go to Paid Course