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

Learn to code with AI (Coursera) Coursera
Scrimba

Learn to code with AI (Coursera)

Imagine waking up tomorrow as a web developer. What would you want to build? With AI tools like ChatGPT, you're already a developer, regardless of your experience, if you know how to work with them. So in this course, you'll build functional, interactive front-end projects while learning how to write effective prompts and debug and refine your code with the help of AI.

Jul 1st 2026
2 Weeks
Programming Foundations with JavaScript, HTML and CSS (Coursera) Coursera
Duke University

Programming Foundations with JavaScript, HTML and CSS (Coursera)

Learn foundational programming concepts (e.g., functions, for loops, conditional statements) and how to solve problems like a programmer. In addition, learn basic web development as you build web pages using HTML, CSS, JavaScript. By the end of the course, will create a web page where others can upload their images and apply image filters that you create.

Jun 29th 2026
4 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
Asynchronous JavaScript Requests (Udacity) Udacity
Udacity

Asynchronous JavaScript Requests (Udacity)

Fetch Data Asynchronously. This course covers everything a developer needs to know to asynchronously send and receive data in their web applications. You'll dive into how asynchronous requests work by using the XHR object to create and send asynchronous requests for image and news article data. Then, you'll see how you can perform async requests more easily using third-party libraries and APIs like jQuery's Ajax and the Fetch API.

Self Paced
Self-Paced
Advanced Styling with Responsive Design (Coursera) Coursera
University of Michigan

Advanced Styling with Responsive Design (Coursera)

It used to be the case that everyone viewed webpages on about the same size screen. But with the explosion of the use of smartphones to access the Internet, the landscape of design has completely changed. People viewing your site will now expect that it will perform regardless of the platform (smartphone, tablet, laptop, or desktop computer). This ability to respond to any platform is called responsive design.

Jun 29th 2026
4 Weeks
Quantitative Foundations for International Business (Coursera) Coursera
University of London

Quantitative Foundations for International Business (Coursera)

This course provides the essential mathematics required to succeed in the finance and economics related modules of the Global MBA, including equations, functions, derivatives, and matrices. You can test your understanding with quizzes and worksheets, while more advanced content will be available if you want to push yourself. This course forms part of a specialisation from the University of London designed to help you develop and build the essential business, academic, and cultural skills necessary to succeed in international business, or in further study.

Jun 29th 2026
4 Weeks
Interactivity with JavaScript (Coursera) Coursera
University of Michigan

Interactivity with JavaScript (Coursera)

If you want to take your website to the next level, the ability to incorporate interactivity is a must. But adding some of these types of capabilities requires a stronger programming language than HTML5 or CSS3, and JavaScript can provide just what you need. With just a basic understanding of the language, you can create a page that will react to common events such as page loads, mouse clicks & movements, and even keyboard input.

Jun 29th 2026
4 Weeks
Object Oriented Programming in Java (Coursera) Coursera
University of California, San Diego

Object Oriented Programming in Java (Coursera)

Welcome to our course on Object Oriented Programming in Java using data visualization. People come to this course with many different goals -- and we are really excited to work with all of you! Some of you want to be professional software developers, others want to improve your programming skills to implement that cool personal project that you’ve been thinking about, while others of you might not yet know why you’re here and are trying to figure out what this course is all about.

Jun 29th 2026
5-12 Weeks
Programming Languages, Part C (Coursera) Coursera
University of Washington

Programming Languages, Part C (Coursera)

This course is an introduction to the basic concepts of programming languages, with a strong emphasis on functional programming. The course uses the languages ML, Racket, and Ruby as vehicles for teaching the concepts, but the real intent is to teach enough about how any language “fits together” to make you more effective programming in any language -- and in learning new ones.

Jun 29th 2026
3 Weeks
Advanced R Programming (Coursera) Coursera
Johns Hopkins University

Advanced R Programming (Coursera)

This course covers advanced topics in R programming that are necessary for developing powerful, robust, and reusable data science tools. Topics covered include functional programming in R, robust error handling, object oriented programming, profiling and benchmarking, debugging, and proper design of functions.

Jun 29th 2026
4 Weeks
Object-Oriented Design (Coursera) Coursera
University of Alberta

Object-Oriented Design (Coursera)

This course takes Java beginners to the next level by covering object-oriented analysis and design. You will discover how to create modular, flexible, and reusable software, by applying object-oriented design principles and guidelines. And, you will be able to communicate these designs in a visual notation known as Unified Modelling Language (UML). You will be challenged in the Capstone Project to apply your knowledge of object-oriented design by evolving and documenting the Java codebase for an Android application with corresponding UML documentation.

Jun 29th 2026
4 Weeks