Free Course Image JavaScript Objects and Prototypes In-depth

Free online courseJavaScript Objects and Prototypes In-depth

Duration of the online course: 2 hours and 15 minutes

New

Master JavaScript objects and prototypes with this free course—write cleaner OOP code, understand this/new, and boost your web dev skills fast.

In this free course, learn about

  • What JavaScript objects are, how properties work, and how to access/update them
  • Ways to create objects: literals, factory functions, constructors, and Object()
  • Why factory functions help when building many similar objects (e.g., employees)
  • How constructor functions differ from regular functions and how new changes a call
  • The four function invocation types and how each sets the this value
  • How to use call() to reuse a method with an explicit this (method borrowing)
  • Why defining methods inside constructors is wasteful and duplicates per instance
  • What prototypes are and how instance __proto__ links to a constructor's prototype
  • Prototype-chain property lookup: how JS searches when a property isn't on the object
  • How to find an object's constructor via prototype links (constructor property)
  • How {} corresponds to creating an empty object with Object as its constructor
  • How to set up inheritance so Manager can use Employee.prototype methods via chaining

Course Description

Understanding objects and prototypes is one of the biggest turning points in becoming confident with JavaScript. Many bugs, performance issues, and confusing behaviors come from not knowing where properties and methods really live, how they are found, and what happens when functions are invoked in different ways. This course takes you beyond surface-level syntax so you can reason about code the same way the JavaScript engine does—an essential skill for modern web development.

You will build a solid foundation in object basics and object creation patterns, then connect that knowledge to constructors and what the language does behind the scenes when you use the new keyword. You will learn to spot the difference between calling a regular function and a constructor call, why that difference matters, and how execution context affects the value of this in real applications. By practicing with function invocation types and borrowing behavior with call, you will gain the practical ability to reuse functions across objects without rewriting or mutating original implementations.

As you move deeper, the course clarifies why defining methods inside constructors can be wasteful at scale and how prototypes solve that problem. You will understand what __proto__ points to, how prototype links are formed, and how property lookup travels up the prototype chain when a value is not found directly on an object. This knowledge helps you debug faster, design APIs more cleanly, and avoid common misconceptions around inheritance and shared behavior.

Finally, you will connect prototype concepts to JavaScript’s inheritance model, including how specialized objects can access methods from more general types without duplicating them. You will also build intuition for how common patterns relate back to the language’s core object function and the prototype object itself. By the end, you will be able to read and write object-oriented JavaScript with more clarity, choose the right construction approach for a situation, and confidently explain how prototypes power reusable behavior in everyday code.

Course content

  • Video class: Objects and Prototypes In-depth 01 - Introduction 02m
  • Video class: Objects and Prototypes In-depth 02 - Objects Basics 04m
  • Exercise: Which statement best describes a JavaScript object and how you can work with its properties?
  • Video class: Objects and Prototypes In-depth 03 - Creating Objects 05m
  • Exercise: Why is creating a function like createEmployeeObject useful when building many employee objects?
  • Video class: Objects and Prototypes In-depth 04 - JavaScript Constructors 07m
  • Video class: Objects and Prototypes In-depth 05 - Difference between regular functions and constructors 09m
  • Exercise: When a function is called with the new keyword in JavaScript, what does JavaScript effectively do for that function call?
  • Video class: Objects and Prototypes In-depth 06 - Switching function types and calls 07m
  • Video class: Objects and Prototypes In-depth 07 - Function Execution Types 05m
  • Exercise: Which option correctly describes one of the four ways to invoke a function in JavaScript as discussed here?
  • Video class: Objects and Prototypes In-depth 08 - The this argument values 08m
  • Video class: Objects and Prototypes In-depth 09 - Working on objects with this reference 05m
  • Video class: Objects and Prototypes In-depth 10 - Using the call function 12m
  • Exercise: How can a mechanic object reuse a bicycle’s inflateTires function to inflate a specific bicycle (without changing the original function)?
  • Video class: Objects and Prototypes In-depth 11 - When constructors aren't good enough 05m
  • Exercise: Why is defining a function like inflateTires inside a constructor considered wasteful when creating many objects?
  • Video class: Objects and Prototypes In-depth 12 - Introducing the prototype 07m
  • Exercise: When a function is used with the new keyword, what does the created object's __proto__ point to?
  • Video class: Objects and Prototypes In-depth 13 - Property lookup with prototypes 08m
  • Exercise: When accessing a property like obj.test, what does the JavaScript engine do if test is not found directly on obj?
  • Video class: Objects and Prototypes In-depth 14 - Object behaviors using prototypes 08m
  • Video class: Objects and Prototypes In-depth 15 - Object Links With Prototypes 05m
  • Exercise: How can you determine the constructor function that created an object using prototype links?
  • Video class: Objects and Prototypes In-depth 16 - The Object function 08m
  • Exercise: What does the object literal `{}` most closely correspond to when creating an empty object?
  • Video class: Objects and Prototypes In-depth 17 - The Prototype object 09m
  • Exercise: During a property lookup like emp.test, what is the correct order JavaScript checks in the prototype chain (assuming no property is found)?
  • Video class: Objects and Prototypes In-depth 18 - Inheritance In JavaScript 09m
  • Exercise: How can a Manager object access methods defined on Employee.prototype without copying them onto Manager.prototype?
  • Video class: Objects and Prototypes In-depth 19 - Conclusion 01m

This free course includes:

2 hours and 15 minutes of online video course

Digital certificate of course completion (Free)

Exercises to train your knowledge

100% free, from content to certificate

Ready to get started?Download the app and get started today.

Install the app now

to access the course
Icon representing technology and business courses

Over 5,000 free courses

Programming, English, Digital Marketing and much more! Learn whatever you want, for free.

Calendar icon with target representing study planning

Study plan with AI

Our app's Artificial Intelligence can create a study schedule for the course you choose.

Professional icon representing career and business

From zero to professional success

Improve your resume with our free Certificate and then use our Artificial Intelligence to find your dream job.

You can also use the QR Code or the links below.

QR Code - Download Cursa - Online Courses

More free courses at Web Development

Free Ebook + Audiobooks! Learn by listening or reading!

Download the App now to have access to + 5000 free courses, exercises, certificates and lots of content without paying anything!

  • 100% free online courses from start to finish

    Thousands of online courses in video, ebooks and audiobooks.

  • More than 60 thousand free exercises

    To test your knowledge during online courses

  • Valid free Digital Certificate with QR Code

    Generated directly from your cell phone's photo gallery and sent to your email

Cursa app on the ebook screen, the video course screen and the course exercises screen, plus the course completion certificate