К содержимому
learnspaceYOUR NEXT CHAPTER
ПРОСТРАНСТВО ОБУЧЕНИЯ
ГлавнаяКаталог курсовМоё обучениеCoursera

Знания без границ

Учитесь у лучших университетов и компаний мира.

Открыть Coursera
Интеграция
Пространство университета
Моё пространствоСтраница курса
↵
ЯЛичный кабинетСтудент
© 2026 LearnSpaceКаждый день — возможность узнать больше.Помощь
JavaScript Prototypes 2025 – The Complete Course · LearnSpace
Назад в каталог
courseraПрограммирование

JavaScript Prototypes 2025 – The Complete Course

Курс от Packt
Средний≈ 14.4 чАнглийский
О курсеНавыкиПрограммаПреподаватели

О курсе

Updated in May 2025. This course now features Coursera Coach! A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. Master the foundations and nuances of JavaScript’s prototypal inheritance system in this comprehensive course. You'll gain a deep understanding of how JavaScript handles object creation, inheritance, and the prototype chain, equipping you with practical skills to write more efficient and scalable code. The course begins by introducing key concepts like prototypal inheritance, hidden [[Prototype]] links, and how objects and functions interact with these structures. From there, you’ll explore instantiation patterns including functional, pseudoclassical, and ES6 class-based models, learning how to implement and optimize them through hands-on examples. Next, you’ll dive into the intricacies of the .prototype property, the __proto__ accessor, and their roles in building robust prototype chains. The course includes a practical project to create multi-level inheritance systems using various modern JavaScript approaches. You’ll also compare JavaScript's prototype-based model with class-based languages and composition techniques. This course is ideal for intermediate JavaScript developers looking to deepen their knowledge of object-oriented programming in JavaScript. A basic understanding of JavaScript syntax and functions is recommended. If you're comfortable with objects and functions but want to master inheritance and prototypes, this course is for you.

Навыки, которые вы освоите

Object Oriented Programming (OOP)Object Oriented Design

Программа курса

9 модулей · 115 учебных материалов

01Introduction8 материалов

Introduction

Prototypal InheritanceВидеоFull Course ResourcesЧтениеAll objects have a [[Prototype]]ВидеоThere are different [[Prototype]] objectsВидео

Учитесь у экспертов

Packt - Course Instructors

Преподаватель курса

JavaScript Prototypes 2025 – The Complete Course
В каталоге вашей программы

Инвестируйте в себя

Новые знания — в удобное для вас время.

Начать на Coursera

Обучение откроется на Coursera
в новой вкладке

Обучение на Coursera

≈ 14.4 ч

9 модулей

Язык: Английский

Часть программы вашего университета
Functions are specialВидео
In JavaScript, objects rule the roostВидео
Hypothetical project exampleВидео
Introduction - AssessmentЗадание
02The [[Prototype]] object26 материалов

The [[Prototype]] object

All objects have a [[Prototype]] propertyВидеоThe [[Prototype]] is hiddenВидеоWhy is the [[Prototype]] an internal propertyВидеоAlmost everything in JavaScript inherits from the Object interfaceВидеоPrimitive values and object wrappersВидеоCreating an object "primitive", using a constructorВидеоPrimitives - taking a step backВидеоCreating a custom [[Prototype]]ВидеоSetting prototypes exampleВидеоThe prototype of an object literal will point to its constructor's ".prototype"ВидеоDevelopers jargonВидеоInherited methodsВидеоThe prototype chainВидеоA prototype chain exampleВидеоThe prototype will eventually point to nullВидеоThe prototype has limitationsВидеоShadowing inherited properties and methodsВидеоThe prototype does not affect the value of THISВидеоLooping through objectsВидеоEnumerable propertiesВидеоIterating methodsВидеоWarning - don't change the prototype on the flyВидеоWarning - don't mess with in-built prototype objectsВидеоSummaryВидеоUnderstanding Prototypes in JavaScriptDIALOGUEThe [[Prototype]] object - AssessmentЗадание
03Instantiation Patterns17 материалов

Instantiation Patterns

Object LiteralsВидеоInstantiation PatternsВидеоFunctional InstantiationВидеоShortcomings of functional instantiationВидеоFunctional Shared InstantiationВидеоPrototypal Instantiation - IntroductionВидеоObject.create()ВидеоPrototypal Instantiation - exampleВидеоPrototypal Instantiation - explainedВидеоPseudoclassical Instantiation - introВидеоPseudoclassical Instantiation - exampleВидеоWarning: you can't add everything to the prototypeВидеоCombining inheritance and constructorsВидеоArrow syntax cannot be used as a constructorВидеоClass InstantiationВидеоCreating and Understanding JavaScript Object LiteralsDIALOGUEInstantiation Patterns - AssessmentЗадание
04__proto__ (aka: dunder proto)11 материалов

__proto__ (aka: dunder proto)

__proto__ introductionВидеоDunder proto is not an internal propertyВидео__proto__ is partly deprecated, in Annex BВидеоModern alternatives to getting & setting an object's prototypeВидеоTake a step backВидеоProblem #1: __proto__ is easily configurableВидеоProblem #2: __proto__ is a special keywordВидеоSetting an object's prototype to nullВидеоSummary of __proto__ВидеоUnderstanding JavaScript Prototypes and __proto__DIALOGUE__proto__ (aka: dunder proto) - AssessmentЗадание
05The .prototype property19 материалов

The .prototype property

Only functions have a .prototype propertyВидеоSome functions do not have a .prototype propertyВидеоWhy developers get confused with the word "prototype"ВидеоThe .prototype only matters for constructor functionsВидеоThe .prototype property is an objectВидеоThe object's [[Prototype]] is assigned to the function's .prototypeВидеоAlmost all functions have both a [[Prototype]] and .prototype propertyВидеоWhy is the function's .prototype property a function and not an object?ВидеоThere are multiple prototypes in the chainВидеоWhat is the constructor property?ВидеоWhy is the constructor property there?ВидеоA fun testВидеоThe .prototype property can be overwrittenВидеоThe entire prototype chain revealedВидеоThe Object.prototype rules the roostВидеоDifferences between [[Prototype]] and .prototypeВидеоSummary of the .prototype propertyВидеоUnderstanding JavaScript Function PrototypesDIALOGUEThe .prototype property - AssessmentЗадание
06Practical Application - Building Your Own Prototype Chains17 материалов

Practical Application - Building Your Own Prototype Chains

Course project overviewВидеоUsing the 'new' keyword to set up a prototype chain (prior to 2011)ВидеоCreating the prototypal chain using the 'new' keyword (Part 2)ВидеоFixing the constructor reference problemВидеоUsing Object.create() to set up a prototype chain (after ES5 - 2011)ВидеоUsing Object.setPrototypeOf() to set up a prototype chain (after ES6 - 2015)ВидеоUsing Classes to set up a prototype chain (after ES6 - 2015)ВидеоUsing the "extends" keyword to build our class-based prototype chainВидеоBuilding a 3-level custom prototype chain - using Constructor FunctionsВидеоBuilding a 3-level custom prototype chain - using ClassesВидеоProblems with our code - duplicationВидеоSolution: Using the call() method with constructor functionsВидеоCompleting 3 levels of prototype inheritance - Constructor FunctionsВидеоCompleting 3 levels of prototype inheritance - Class SyntaxВидеоSummaryВидеоApplying Prototypal Inheritance in JavaScriptDIALOGUEPractical Application - Building Your Own Prototype Chains - AssessmentЗадание
07Prototypal Languages vs Classical Languages9 материалов

Prototypal Languages vs Classical Languages

What is an OOP language and how do classes and prototypes fit into the picture?ВидеоHow class-based languages and prototype-based languages deal with inheritanceВидеоHello World example - classes vs prototypesВидеоInheritance code with Java (a class-based language)ВидеоTesting code on JDoodleВидеоComparison between classes and prototypesВидеоSection SummaryВидеоIntroduction to Inheritance in OOPDIALOGUEPrototypal Languages vs Classical Languages - AssessmentЗадание
08Prototypes vs Composition5 материалов

Prototypes vs Composition

Intro into compositionВидеоComposition code - converting our prototypal-based model to compositionВидеоSummary - when to use composition vs prototypesВидеоUnderstanding Composition vs PrototypesDIALOGUEPrototypes vs Composition - AssessmentЗадание
09Outro3 материалов

Outro

OutroВидеоFull Course Practice AssessmentЗаданиеFull Course AssessmentЗадание