
Learn how JavaScript objects model real-world things through properties with values and methods, and explore object oriented programming concepts like constructors, prototype, polymorphism, inheritance, and modules.
Learn how to access property values in JavaScript objects using dot notation and bracket notation, with examples like height and name, and using template strings.
Add, update, and delete object properties in JavaScript using dot and bracket notation, including strings, booleans, and numbers, with the delete keyword.
Learn how to create, access, update, and delete multi-word properties in JavaScript objects using bracket notation, and why dot notation fails for keys with spaces.
Learn how to use shorthand property names in JavaScript objects to omit values when variable names match keys, saving space and enabling concise returns and mixing with regular properties.
this lesson demonstrates creating an array of objects in javascript, each with properties like name and age, and accessing a second object's eye color using dot or bracket notation.
Explore computed properties in JavaScript by using variables inside square brackets to create dynamic property names and values, and see how a prompt enables updates.
Explore do's and don'ts of naming properties in JavaScript objects. Learn when to use dot notation versus square brackets, including properties with numbers, spaces, keywords, and multiword keys.
Explore object methods in JavaScript: define functions bound to objects, access and modify properties, and use ES6 shorthand syntax and arrow functions, including methods outside the object and argument handling.
This binds to the calling object inside a method, enabling dynamic access to properties. Copying objects can break this binding, and outer expressions or arrow functions don't support it.
Use the in operator to check if a key exists in an object and loop through properties with for...in; access properties with bracket notation, handling undefined values and true/false results.
Explore object referencing in JavaScript, showing how objects are stored by reference via memory addresses rather than values, causing multiple variables to point to the same object and share changes.
Learn cloning and merging objects in JavaScript using for...in loops for independent copies, and Object.assign for cloning and merging into a root object, with practical examples.
Discover constructors as the base of object oriented programming in JavaScript, creating a reusable template of properties, using this and new to build multiple objects, leading to prototypes.
Explore how the new keyword turns a function into a constructor, guard against missing new with new.target, and how returns and prototypes behave.
Learn to implement private properties in JavaScript using closures, with getters and setters to access and mutate values like name, and explore getOwnPropertyNames.
Explore symbols in JavaScript, a unique and immutable data type used to create hidden identifiers for object properties, with global symbols via Symbol.for and non-enumerable behavior.
Discover prototypes and prototype inheritance in JavaScript by using constructors and moving methods to the prototype to share behavior efficiently across objects.
Explore prototypes and the prototype chain, showing how object instances inherit from constructors and prototypes, and how to modify prototypes and predefined methods in JavaScript.
Explore prototype inheritance in JavaScript, learning how objects inherit properties and methods from a single parent constructor via prototypes, and how apply handles inherited arguments.
Explore prototype chaining and how inheritance forms a chain of prototypes from a person to sportsperson to runner, including traversing inherited properties and methods with a for-in loop.
Explore class expressions and returning a class inside a function to dynamically create classes. Learn to instantiate objects from those expressions, define constructors, properties, and methods on the fly.
Learn how to define class fields outside constructors in JavaScript, use user input via prompts, and access properties like h and species inside class methods.
Explore how to define getters and setters in JavaScript classes, using a constructor to declare properties, and seeing how setters initialize and getters retrieve values, with or without a constructor.
Discover class inheritance in JavaScript by using extends to inherit from a parent class, with the parent's properties and constructor automatically applied to the child, and explore chaining.
Learn how to override constructors in a subclass by using super to call the base class constructor, pass all necessary properties, and assign this in the derived class.
Explore static properties and methods in javascript classes, learn how to define class-level members, access them without instantiating objects, and use static methods to compare objects and inherit them.
Explore factory functions in JavaScript to create objects without classes, make properties private inside the function, and return objects directly for simpler, cleaner object creation.
Learn to organize JavaScript code with modules by splitting it into separate files for readability. Export and import variables and functions between files using module type and relative paths.
Explore how JavaScript modules enforce top-level scope, default use strict behavior, and module boundaries; learn exporting functions and variables, import patterns, and how code executes across modules.
Explore exporting and using objects, constructors, prototypes, and classes in JavaScript modules, including property access, method creation, inheritance, and cross-module import and export patterns.
Explore importing with aliases and exporting multiple items, then use asterisks to import all exports as properties of an object while understanding module scope and named exports.
Would you like to take your Javascript knowledge to the next level? Did you know that Object Oriented programming is one of the most asked technical interview topics? So, if you want to ace your interviews, you need a thorough understanding of OOPs (Object Oriented Programming).
Javascript is no stranger to OOPs, and even though it wasn't designed as an OOPs language to start with, with the various advancements in the language, it has adapted quite well to the intricacies of Object oriented design.
Object oriented programming is one of the most sought-after skills in the programming world, and as a web developer, if you master it, you’ll stand out from the rest.
So, if you'd like to delve deep into the exciting world of OOPs, especially with Javascript as your language of choice, this course is perfect for you.
What will you learn in this course?
1. By the end of this course, you’ll have a thorough understanding of how Object oriented programming works in Javascript.
2. Interviewers love interviewees who’ve mastered OOPS and you’ll stand out from the crowd.
3. You'll learn the ins and outs of one of the major topics that can land you a job or a promotion
4. You’ll know how to apply those concepts in your projects and create clean code that runs faster than your peers.
5. You’ll know how to create re-usable components for your projects and take your coding skills to the next level.
6. You'll learn all about the basic OOPs topics like creating properties, methods, accessing them, deleting them and so on.
7. You'll learn the importance of constructors and how to use them to create 100s of objects with just a small block of code.
8. You'll learn all about symbols, the 'this' keyword, looping through objects and a horde of pre-defined global Object methods.
9. You'll learn all about prototypes, prototype inheritance, protototype chain and using them to create re-usable code structures that save a lot of memory space.
10. You'll learn about ES6 classes and using them to create 1000s of objects in a fraction of the time it usually takes.
11. You'll also learn all about class inheritance, polymorphism, private, protected and static classes, class fields and so on.
12. You'll also learn all about factory functions and mixins.
13. Finally, you'll learn about creating re-usable real world app components with ES6 modules.
14. You’ll learn all of these while learning the core concepts of OOPS like encapsulation, inheritance, polymorphism and abstraction.
Who is this course for?
1. Javascript developers who want to take their knowledge to the next level
2. Programmers who already know OOPs but would like to learn how to implement it in Javascript.
3. Web developers who'd like to add "Object oriented programming" to their resume and stand out in your job interviews.
4. Developers who'd like to pad their resume and get that promotion they've always wanted.
5. Developers who want to implement the truly mind-blowing concepts of OOPs in their projects to write faster, cleaner code.
6. Front end developers who are working with frameworks like Angular, React, Vue or Svelte and would like to apply object oriented programming concepts in their projects.
How is this course designed:
Module 1 : Object basics - In this module, we'll look at the various basic topics of Objects such as creating objects, properties and methods, accessing, updating and deleting them and looping through objects.
Module 2 : Object Oriented Programming - advanced - In this module, let's delve deeper into OOPs by looking at the concept of object referencing, using constructors to creating multiple objects with the same lines of code, getters, setters, private properties and symbols.
Module 3 : Prototypes and prototype inheritance - In this module, we'll look at prototypes, creating re-usable codes with them, prototype inheritance, prototype chaining and so much more.
Module 4 : Classes and Class inheritance - In this module, we'll look at ES6 classes, using them to create 1000s of objects faster than the other methods available, class inheritance, private and protected class properties, static properties, factory functions, mixins and so much more.
Module 5 - Modules - In this module, we'll look into how to create modules in your code and create dependencies between different JavaScript files.
Each of these modules will create full-fledged lessons that teach a particular OOPs concept in detail with a lot of real-world over-the-shoulder examples, so you'll have a lot of fun while learning!
So, what are you waiting for? Get in and get started on your journey to becoming an OOPS web developer today!