Object-Oriented JavaScript (Udacity)

Offered by Udacity,
Object-Oriented JavaScript (Udacity)

Build Apps with Maintainable Code. This course is designed to teach web developers how to utilize the various object-oriented programming features within JavaScript. Object-oriented programming allows developers to build applications with reusable and maintainable blocks of code, which leads to efficiency and simplified software design.

Class Deals by MOOC List - Click here and see Udacity's Active Discounts, Deals, and Promo Codes.

With object-oriented JavaScript, you'll be able to build classes to construct objects that encapsulate both data and functionality. You'll also learn how to leverage prototypal inheritance to maintain DRY code, allowing you to pass behaviors down to objects. You'll also learn how to keep data safe and secure by creating private state with closures and immediately-invoked function expressions.
As a front-end web developer, JavaScript is one of the most important languages in your toolbox. A strong foundation in the language’s features empowers you to build efficient and performant web applications. In this course, you’ll explore a variety of ways to write object-oriented code in JavaScript.
You’ll build classes to create new objects that share similar data and functionality. You'll reduce your development time by leveraging JavaScript's prototypal inheritance model, leading to modular and reusable code. And thanks to abstraction and private state, your data will be safe and secure.

What You Will Learn

Lesson 1
Objects in Depth

  • Create objects and add/remove properties to them
  • Write methods to access and mutate an object's properties
  • Learn how variables are properties on window

Lesson 2
Functions at Runtime

  • Leverage functions as first-class functions
  • Identify when a scope is created
  • Utilize closures and IIFE's to build private state

Lesson 3
Classes and Objects

  • Write a constructor function to instantiate objects
  • Identify and manually set the value of this
  • Implement prototypal inheritance

Prerequisites and Requirements
This course builds on the skills covered in Intro to JavaScript. Prior to taking this course, the student should be able to:

  • Explain and utilize JavaScript's primitive types
  • Write conditions and loops
  • Recognize object syntax and structure
  • Declare functions
  • Navigate and use Chrome DevTools
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Swift for Beginners (Udacity) Udacity
Udacity

Swift for Beginners (Udacity)

Your First Programming Language. In this course, you’ll begin learning Swift, Apple's programming language for building iOS applications. You'll start with fundamentals and work your way towards understanding all the core principles necessary to get started creating your first app. At the end of the course, you'll complete a problem set of exercises designed to challenge your understanding of Swift and give you the opportunity to apply what you've learned.

Self Paced
Self-Paced
面向对象技术高级课程 (The Advanced Object-Oriented Technology) (Coursera) Coursera
Peking University

面向对象技术高级课程 (The Advanced Object-Oriented Technology) (Coursera)

如果将软件开发人员看作行走江湖的武侠,那么各种软件开发技术就是武侠赖以傍身的武术秘籍。有的秘籍以易学灵巧见长,练习者很快掌握,并有立竿见影的功效,但失之厚重持久;有的秘籍初学乍练顿显困难,虽冥思苦解仍不得要领,需坚持不断的内功修炼方成正果,却是成为武林大侠必备的至宝。本课程有些类似于后者。

Sep 14th 2026
13-24 Weeks
Swift for Developers (Udacity) Udacity
Udacity

Swift for Developers (Udacity)

Your Next Programming Language. This course offers a quick practical introduction to Swift basics, including types, variables, constants, and functions. It combines syntax exercises with hands-on iOS development in Xcode. By the end of the course students will build their first iOS app, an app that creates and displays song lyrics customized to user input.

Self Paced
Self-Paced
C++程序设计 (Coursera) Coursera
Peking University

C++程序设计 (Coursera)

讲授C++语言中和面向对象有关的概念和语法,如类和对象、运算符重载、继承和多态、类模板和算法模板、标准模板库等。目标是使得学生能够用C++语言,以面向对象的方法编写可维护性、可扩充性好的,较大规模的程序,初步领会面向对象程序设计方法的优势所在。

Sep 21st 2026
5-12 Weeks
Browser Rendering Optimization (Udacity) Udacity
Udacity,Google

Browser Rendering Optimization (Udacity)

Building 60 FPS Web Apps. Performance matters to users. Web developers need to build apps that react quickly and render smoothly. Google performance guru Paul Lewis is here to help you destroy jank and create web apps that maintain 60 frames per second performance. You'll leave this course with the tools you need to profile apps and identify the causes of jank. You'll explore the browser's rendering pipeline and uncover patterns that make it easy to build performant apps.

Self Paced
Self-Paced
Object Oriented Programming in Java (Udacity) Udacity
Udacity

Object Oriented Programming in Java (Udacity)

Build Interactive Java Programs. This course will introduce you to some of the most powerful programming concepts in Java, including: objects, inheritance and collections. You will learn how to use these object-oriented programming concepts in code examples, discover how these concepts are used in applications that require user input, and understand the benefits of mastering these concepts in Java.

Self Paced
Self-Paced
JavaScript Design Patterns (Udacity) Udacity
Udacity

JavaScript Design Patterns (Udacity)

Organizing Code in a Disorganized World. This course covers methods for organizing your code, both conceptually and literally. You’ll learn the importance of separating concerns when writing JavaScript, gaining hands-on experience along the way. Separating concerns can be done with or without an organizational library or framework. We’ll learn how to separate concerns without one, and then we’ll explore an organizational library together. You’ll also learn strategies for exploring other libraries and frameworks on your own.

Self Paced
Self-Paced
Laboratório de Programação Orientada a Objetos - Parte 1 (Coursera) Coursera
Universidade de São Paulo, Brasil

Laboratório de Programação Orientada a Objetos - Parte 1 (Coursera)

Este curso apresenta os conceitos mais importantes em torno do paradigma de desenvolvimento mais comum da indústria de software hoje: a Programação Orientação a Objetos (POO). Oferecido pelo Departamento de Ciência da Computação do Instituto de Matemática e Estatística da USP, o curso é voltado para quem já conhece os conceitos básicos de POO e quer se aprofundar no assunto, tornando-se um excelente programador. Ele funciona bem como uma sequência natural aos 2 cursos anteriores do Prof. Fabio Kon do IME-USP no coursera: Introdução à Ciência da Computação com Python.

Sep 21st 2026
5-12 Weeks
Intro to jQuery (Udacity) Udacity
Udacity

Intro to jQuery (Udacity)

Manipulating Websites with Ease. jQuery is the most popular JavaScript library today, in use by over 60% of the top 100,000 most visited websites. This course will teach you how to use jQuery’s core features - DOM element selections, traversal and manipulation. You'll also learn how to read and make sense of jQuery's documentation, making it easy for you to go beyond the methods taught in this class and take advantage of jQuery's full array of features!

Self Paced
Self-Paced
AWS Machine Learning Foundations Course (Udacity) Udacity
Udacity

AWS Machine Learning Foundations Course (Udacity)

Learn what machine learning is and the steps involved in building and evaluating models. Gain in demand skills needed at businesses working to solve challenges with AI. Learn the fundamentals of advanced machine learning areas such as computer vision, reinforcement learning, and generative AI. Get hands-on with machine learning using AWS AI Devices (i.e. AWS DeepRacer and AWS DeepComposer). Learn how to prepare, build, train, and deploy high-quality machine learning (ML) models quickly with Amazon SageMaker and learn object-oriented programming best practices.

Self Paced
Self-Paced
Introduction to Open Source Application Development (Coursera) Coursera
Illinois Tech

Introduction to Open Source Application Development (Coursera)

This course introduces basic concepts of systems programming using a modern open source language. You will learn to apply basic programming concepts toward solving problems, writing pseudocode, working with and effectively using basic data types, abstract data types, control structures, code modularization and arrays. You will learn to detect errors, work with variables and loops, and discover how functions, methods, and operators work with different data types. You will also be introduced to the object paradigm including classes, inheritance, and polymorphism.

Sep 14th 2026
5-12 Weeks