Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

The Hard Parts of Object Oriented JavaScript

via Frontend Masters


Learn the fundamentals of Object Oriented Programming in JavaScript for organizing and scaling your code. You'll learn JavaScript’s prototypal design and how it works to enable the new ES6 classes under the hood. Understanding prototypes and classes in JavaScript is crucial for working with most modern frameworks and for those coming from traditional OOP languages.


  • Course Introduction
  • Object Oriented Paradigm
  • Creating an Object
  • Object dot Notations
  • Object.create
  • Creating Objects with Functions
  • Avoid Duplication with Prototype
  • Prototype Walkthrough
  • Prototype Chain
  • new & this Keywords
  • Functions are Objects & Functions
  • new Keyword & Share Functions with prototype
  • Review of new
  • Calling Prototype Methods
  • this Keyword Scoping Issues
  • Solving Scope with Arrow Functions
  • ES6 class Keyword
  • Recap of the class Keyword
  • Objects default __proto__
  • Function.prototype and Array.prototype
  • Pair Programming OOJS
  • Intro to Subclassing and Inheritance
  • Create object with Factory Function
  • Create a Sub-Factory Function
  • Creating an object with a Sub-Factory Function
  • Prototype Lookup
  • Subclass Review
  • Call and Apply
  • Create an Object with new
  • Creating a Subclass with a Constructor
  • Using a call Method in a Constructor
  • Assigning Properties to Instance
  • Prototype Tracing
  • Create an Object with a class
  • Creating a Subclass with extends
  • Creating an object with a subclass
  • Using super in a subclass constructor
  • Wrapping Up

Taught by

Will Sentance


Start your review of The Hard Parts of Object Oriented JavaScript

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.