JavaScript Masterclass 2020: Modern & Comprehensive
4.6 (499 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
2,574 students enrolled

JavaScript Masterclass 2020: Modern & Comprehensive

Zero to Hero: ES6 / ES2015 + ES2016 + ES2017, Object Oriented, Functional, Asynchronous JS + Interview Prep
4.6 (499 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
2,573 students enrolled
Created by Hemil Patel
Last updated 9/2019
English
English [Auto-generated]
Current price: $111.99 Original price: $159.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 8.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Understand fundamentals of JavaScript
  • Understand scope in JavaScript with concepts like Lexical Scope, Global Scope and Block Scope
  • Understand basic concepts of functions such as Callback Functions, Function Expressions, IIFE
  • Master object-oriented JavaScript concepts like Prototypal Inheritance, Prototype Chain
  • Master functional programming concepts in JavaScript like Closures, Method Chaining, Higher Order Functions
  • Get entry point into modern JavaScript frameworks like React, Angular and Ember
  • Master Async JavaScript concepts like SetTimeout, Promises, Async Await
Course content
Expand all 88 lectures 08:44:15
+ Course Introduction and Setup
2 lectures 07:09

A brief course introduction that provides an end-to-end overview/agenda of the curriculum.

Preview 02:07

Tools and Environment Setup

Preview 05:02
+ Variables
4 lectures 16:02

How to define variables and its associated rules

Preview 03:47

Difference between keyword let and const

Preview 03:41

Three simple rules for valid variable names

Preview 03:44
Basic Debugging Techniques
04:50
+ Primitive Data Types
13 lectures 57:58

Types of Data Types in JavaScript: Primitive (single value) data type and reference (complex value) data type.

Types of Data Types
00:43

Creating empty values using primitive data type.

null & undefined
05:07
Boolean
02:45

Understanding primitive data type: String

Strings
04:20

Understanding Template Strings

Template Strings
03:29

Understanding String Prototype Methods.

String Methods
06:16

Understanding primitive data type: Number.

Numbers
02:59

Understanding Math Library methods.

Math Methods
02:51
Math.random()
06:58

Understanding primitive data type: Symbol

Symbol
04:27

Converting one primitive data type to another primitive data type.

Preview 07:20

Coding exercise on primitive data types

Coding Exercise
01:45

Solutions for the coding exercise of primitive data types

Coding Solution
08:58
+ JavaScript Basics (Operators and Statements)
9 lectures 59:40

Introduction for Section 4: Operators and Statements

Section Intro
00:58

Understanding math operators, comparison operators, logical operators and conditional operators.

Operators
11:22
Bitwise Operators
15:06

Understanding if/else statement 

if/else Statement
03:56

Understanding switch statement

switch Statement
04:33

Understanding loops

for Loop
05:39

Understanding while loop

while Loop
03:40

Coding Exercise: Given a positive integer, check if the number is prime or not. A prime is a natural number greater than 1 that has no positive divisors other than 1 and itself.

Coding Exercise
02:17

Coding Solution to prime number coding exercise.

Coding Solution
12:09
+ Variable Scope & Scope Chain
5 lectures 13:58

Section Introduction of Scope and Scope Chain


Section Intro
00:45

Understanding Global Scope

Global Scope
05:06

Understanding Block Scope

Block Scope
01:57

Understanding Lexical Scope

Preview 02:31

Understanding scope chain

Scope Chain
03:39
+ Arrays and Objects
12 lectures 01:04:58

Section Introduction of Arrays and Objects

Section Intro
00:58

Introduction to JavaScript Arrays.

Array Introduction
07:32

Mutating JavaScript Arrays. Adding and removing values from an array. 

Mutating Arrays
07:21

Understanding Multidimensional Arrays

Multidimensional Arrays
05:50

Understanding iteration through an array using for loop and forEach loop.

Iterating Arrays using "forEach" & "for of"
04:44

Introducing JavaScript Objects.

Object Introduction
08:48

Iterating through object properties using the "for in" loop. 

Iterating Objects using "for in"
03:26

Understanding newly introduced Destructuring assignment feature in JavaScript. 


Preview 03:28

Understanding newly introduced reference data type: Set.

Sets
07:53

Understanding newly introduced reference data type: Maps and WeakMaps.

Maps and WeakMaps
09:28

Coding exercise on reference data types.

Coding Exercise
01:23

Coding solution on reference data types.

Coding Solution
04:07
+ functions
9 lectures 01:00:52

Introducing functions in JavaScript. Understanding differences between function declaration and function expression.

Function Basics
08:05

Understanding spread operator and rest parameters.   

Spread Operator and Rest Parameters
08:05

Setting default parameters for functions in ES6

Default Parameters
05:57

Understanding callback functions and their applications.

Callback Functions
10:06

Understanding array methods: map, filter, and reduce.

Map, Filter, and Reduce Methods
09:58

Understanding array method: sort.  For example: sort ascending/descending order,  sort array of objects.   

Array Method Sort()
06:13

Understanding array methods: some() and every()

Array Methods some() & every()
03:22

Coding exercise: callback function 

Coding Exercise
02:15

Coding solution: callback function.

Coding Solution
06:51
+ Object Oriented Programming
6 lectures 29:57

Introducing prototype based Inheritance.

Prototypal Inheritance
01:53

Function constructors behaves like classes in JavaScript.

Function Constructors
05:03

Extending function constructor is more like creating sub-classes from the main-class.

Extending Constructors
09:28

Classes in JavaScript are very different  than classes in classical inheritance.   They are really syntactical sugar, underneath they are using function constructors and prototypal inheritance.   

Classes
03:31

Understanding sub-classes.

Sub Classes
03:06

Arrow functions are function without its own 'this'. This is more like regular functions in other programming languages. 

Arrow Function
06:56
+ Functional Programming
4 lectures 26:55

It's important to understand this keyword in object literals so that we can use call, apply, and bind to borrow methods from one object to be used on other objects.

"this" keyword in Object Literals
05:00

To understand power of functional programming, you must understand call, apply, and bind. Using these, you can mix and match functionalities of objects. 

Call Apply Bind
07:26

Understanding closures. it's the root of functional programming as it allows JavaScript to be non-blocking.   

Closures
09:53

You can chain methods to achieve shorter syntax.   

Function Chaining
04:36
+ Async JavaScript
7 lectures 56:04

Understanding blocking vs. non-blocking.

Blocking vs Non-Blocking
03:42

If you want to create wait, or you want to do something over an over forever, use setTimeout and setInterval in that order. 

setTimeout & setInterval
08:15

Promises are the heart of making API calls in JavaScript, with reasonably simple syntax.

Promises
18:21

If you want to block something in the non-blocking environment, use async await.   It doesn't block everything, you can control things you need to block by putting them in an async function.   

Async Await
10:24

Want to get data from server or send some data to server?  You will need Rest API, it's a stateless protocol that is very popular.

Rest API
02:27

Understanding REST API methods: get, post, put, patch, and delete.

GET, POST, PUT
04:01

Understanding newly introduced fetch API.

Fetch API
08:54
Requirements
  • No JavaScript knowledge is required. However, enthusiasm to learn is very much required :) We will start at a basic level and gradually move up to an expert level.
Description

This is a modern and comprehensive JavaScript course that focuses on the latest version of JavaScript. We will cover some of the latest features of javaScript. Features such as Async Await, Array.from(), Array.Map() that were recently introduced. One of the best feature of this course is its simplicity. All the coding samples are very easy to understand. I prefer to use real world use cases to explain concepts. 


Who this course is for:
  • This course is for people who want to learn the latest version of JavaScript from scratch
  • This course is for people who want to make a career change or want to make an entry into Front-end development
  • This course is for people who have some JavaScript experience and want to strengthen their fundamentals and become an expert