Course Highlights
  • Advanced JavaScript Practices
  • Object Oriented Programming
  • Functional Programming
  • Scope and Execution Context
  • Inheritance + Prototype Chain
  • Latest features: ES6, ES7, ES8, ES9, ES10, ES2020, ES2021, ES2022
  • Closures
  • Asynchronous JavaScript + Event Loop
  • JavaScript Modules
  • `this` keyword
  • JavaScript Engine and Runtime
  • Error Handling
  • Stack Overflow
  • Memory Leaks
  • Composition vs Inheritance
  • Type Coersion
  • Pass By Reference vs Pass by Value
  • Higher Order Functions
  • IIFE
  • .call(), .apply(), .bind()
  • Interpreter/ Compiler/ JIT Compiler
  • Garbage Collection
  • Hoisting
  • JavaScript best practices

Overview

What skills will you acquire?

  • JavaScript Web Development Programming Writing cross-browser JavaScript Async and Await code.
  • Advanced JavaScript concepts such as function prototypes, scopes, classes, templates, module import and export, callbacks, and async will be covered.
  • Learn complicated and advanced ways to advance your web page applications.
  • Investigate the functions of the Document Object Model, a web development programming interface.
  • Create interactive content, monitor user activity, and use event handlers to describe actions when events occur.
  •  Regular expressions, recursion, concurrency, and debugging are examples of programming terminology and procedures.
  • Understanding of the complicated processes that JavaScript can do

More about this javascript course and basic requirements:

  • Basic understanding of HTML and javascript is a good addition to the course. 
  • A computer system with a stable internet connection is compulsory.
  • You will get monthly coding challenges, quizzes and other free resources for practice.
Curriculum

5 Topics
How To Succeed In This Course
Join Our Online Classroom!
Exercise: Meet Your Classmates & Instructor
ZTM Resources
Monthly Coding Challenges Free Resources and Guides

25 Topics
Section Overview
Javascript Engine
Exercise: Javascript Engine
Inside the Engine
Exercise: JS Engine For All
Interpreters and Compilers
Babel + TypeScript
Inside the V8 Engine
Comparing Other Languages
Writing Optimized Code
WebAssembly
Call Stack and Memory Heap
Stack Overflow
Garbage Collection
Memory Leaks
Single Threaded
Exercise: Issue With Single Thread
Javascript Runtime
Node.js
IMPORTANT: Replit Code
Exercise: Fix This Code
Section Review
Web Developer Monthly
Advanced JavaScript Cheatsheet
Endorsements On LinkedIN

26 Topics
Section Overview
Execution Context
Lexical Environment
Hoisting
Exercise: Hoisting
Exercise: Hoisting 2
Exercise: Hoisting 3
Function Invocation
arguments Keyword
Variable Environment
Scope Chain
[[scope]]
Exercise: JS is Weird
Function Scope vs Block Scope
Exercise: Block Scope
Global Variables
IIFE
this Keyword
Exercise: Dynamic Scope vs Lexical Scope
call() apply() bind()
Exercise: call() apply()
bind() and currying
Exercise: this Keyword
Exercise: this Keyword 2
Context vs Scope
Section Review

13 Topics
Section Overview
Javascript Types
Array.isArray()
Pass By Value vs Pass By Reference
Exercise: Compare Objects
Exercise: Pass By Reference
structuredClone()
Type Coercion
Exercise: Type Coercion
Quick Note: Upcoming Videos
JTS: Dynamic vs Static Typing
JTS: Weakly vs Strongly Typed
JTS: Static Typing In JavaScript

26 Topics
Section Overview
Functions are Objects
First Class Citizens
Extra Bits: Functions
Higher Order Functions
Exercise: Higher Order Functions
Closures
Exercise: Closures
Closures and Memory
Closures and Encapsulation
Exercise: Closures 2
Solution: Closures 2
Exercise: Closures 3
Solution: Closures 3
Closures Review
Prototypal Inheritance
Prototypal Inheritance 2
Prototypal Inheritance 3
Prototypal Inheritance 4
Prototypal Inheritance 5
Prototypal Inheritance 6
Exercise: Prototypal Inheritance
Solution: Prototypal Inheritance
Exercise: Prototypal Inheritance with this
Section Review
Exercise: Imposter Syndrome

19 Topics
Section Overview
OOP and FP
OOP Introduction
OOP1: Factory Functions
OOP2: Object.create()
OOP3: Constructor Functions
More Constructor Functions
Funny Thing About JS...
OOP4: ES6 Classes
Object.create() vs Class
this - 4 Ways
Inheritance
Inheritance 2
ES2022: Private Class Fields + Methods
Public vs Private
OOP in React.js
4 Pillars of OOP
Exercise: OOP and Polymorphism
Reviewing OOP

20 Topics
Section Overview
Functional Programming Introduction
Exercise: Amazon
Pure Functions
Pure Functions 2
Can Everything Be Pure?
Idempotent
Imperative vs Declarative
Immutability
Higher Order Functions and Closures
Currying
Partial Application
Quick Note: Upcoming Videos
MCI: Memoization 1
MCI: Memoization 2
Compose and Pipe
Arity
Is FP The Answer To Everything?
Solution: Amazon
Reviewing FP

3 Topics
Composition vs Inheritance
OOP vs FP
OOP vs FP 2

12 Topics
Section Overview
Quick Note: Upcoming Videos
How JavaScript Works
Promises
ES8 - Async Await
ES9 (ES2018)
ES9 (ES2018) - Async
Job Queue
Parallel Sequence and Race
ES2020: allSettled()
ES2021: any()
Threads Concurrency and Parallelism

7 Topics
Section Overview
What Is A Module?
Module Pattern
Module Pattern Pros and Cons
CommonJS AMD UMD
ES6 Modules
Section Review

8 Topics
Section Overview
Errors In JavaScript
Try Catch
Async Error Handling
Async Error Handling 2
Exercise: Error Handling
Extending Errors
Section Review

6 Topics
Learning Guideline
Endorsements On LinkedIN
Become an Alumni
Coding Challenges
Thank You
Extra Materials

26 Topics
Quick Note: Upcoming Videos
Section Overview
What Is A Data Structure?
How Computers Store Data
Data Structures In Different Languages
Operations On Data Structures
Array Introduction
Static vs Dynamic Arrays
Implementing An Array
Strings and Arrays
Exercise: Reverse A String
Solution Reverse A String
Exercise: Merge Sorted Arrays
Solution: Merge Sorted Arrays
Arrays Review
Hash Tables Introduction
Hash Function
Hash Collisions
Hash Tables In Different Languages
Exercise: Implement A Hash Table
Solution: Implement A Hash Table
keys()
Hash Tables vs Arrays
Exercise: First Recurring Character
Solution: First Recurring Character
Hash Tables Review

14 Topics
Quick Note: Upcoming Videos
What is JavaScript?
Your First JavaScript
Variables
Control Flow
JavaScript On Our Webpage
Functions
Data Structures: Arrays
Data Structures: Objects
Exercise: Build Facebook
JavaScript Terminology
Loops
Exercise: Build Facebook 2
JavaScript Keywords

22 Topics
Quick Note: Upcoming Videos
Scope
Advanced Control Flow
ES5 and ES6
Advanced Functions
Advanced Arrays
Advanced Objects
ES7
ES8
Note: ES9 + ES8 Async Await
ES10 (ES2019)
Advanced Loops
ES2020 Part 1
ES2020 Part 2
ES2020 Part 3
ES2020: globalThis
ES2021
ES2022
ES2023
Exercise: ES2023
Debugging
Modules

4 Topics
Notes To Review The Course
AMA - 100000 Students!!
Course Review
The Final Challenge

1 Topic
Special Bonus Lecture

  Write a Review

JavaScript: The Advanced Concepts (2023 Update)

Go to Paid Course
Frequently Asked Questions
There are many websites and free courses available that help you learn javascript easily. It includes tutorials, videos, courses, and documentation to help you thoroughly understand the coding basics.
Understand variables, functions, control structures and data types properly. You must also be aware of OOP and asynchronous concepts to be an advanced developer.
You can do this by using the Chrome Developer Tool; this can be accessed by using the F12 key or right-clicking the page and selecting "Inspect". Then, go to the "Sources" tab and select the "Editor" link.
However, you can code on a simple text editor like Notepad or Notepad++. But to code efficiently, experts recommend Visual Studio code or sublime text Editor to code fast and hassle-free.
Notepad ++ is a basic and easy-to-use HTML CSS JS editor that includes a variety of IDEs such as macros and the ability to change global adjustments using Regular Expressions. Listen, every tool is excellent in terms of its functionality.