Что такое прототипы ?
Спросят с вероятностью 13%
Прототипы — это механизм, с помощью которого объекты наследуют свойства и методы от другого объекта. Это основной способ реализации наследования и повторного использования кода. Они являются частью прототипного наследования, которое отличается от классического наследования.
Каждый объект имеет внутреннее и неизменяемое свойство, известное как
Создание и использование прототипов
Можно задать или изменить с помощью
Пример:
В этом примере объект
Значение this
Важно отметить, что когда метод наследуется и вызывается на объекте-потомке, ключевое слово
Прототипы — это механизм, который позволяет объектам наследовать свойства и методы от других объектов. Это основа для реализации наследования и повторного использования кода в языке. Прототипы играют ключевую роль в структуре и поведении объектов, позволяя создавать более модульный и поддерживаемый код.
Другими словами, прототипы позволяют объектам "наследовать" свойства и методы от других объектов, облегчая повторное использование кода и организацию структуры программ.
👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти к Списку всех вопросов на Frontend Developer. Ставь 👍 если нравится контент.
🔐 База собесов | 🔐 База тестовых
Спросят с вероятностью 13%
Прототипы — это механизм, с помощью которого объекты наследуют свойства и методы от другого объекта. Это основной способ реализации наследования и повторного использования кода. Они являются частью прототипного наследования, которое отличается от классического наследования.
Каждый объект имеет внутреннее и неизменяемое свойство, известное как
[[Prototype]]
, которое может быть ссылкой на другой объект. Этот объект, на который он ссылается, называется "прототипом". Когда вы пытаетесь получить доступ к свойству или методу объекта, и это свойство или метод не найдены в самом объекте, JavaScript автоматически ищет это свойство или метод в его прототипе. Этот процесс продолжается рекурсивно вверх по цепочке прототипов, пока свойство или метод не будут найдены или не будет достигнут конец цепочки прототипов.Создание и использование прототипов
Можно задать или изменить с помощью
Object.create()
, Object.setPrototypeOf()
, или просто установив свойство proto
(хотя последний способ не рекомендуется к использованию из-за вопросов производительности и совместимости).Пример:
const animal = {
type: 'Animal',
describe() {
return Это ${this.type};
}
};
const dog = Object.create(animal);
dog.type = 'Собака';
console.log(dog.describe()); // Это Собака
В этом примере объект
dog
наследует метод describe
от объекта animal
через прототипную цепочку.Значение this
Важно отметить, что когда метод наследуется и вызывается на объекте-потомке, ключевое слово
this
внутри метода ссылается на объект-потомок, а не на объект-прототип, в котором метод был определен.Прототипы — это механизм, который позволяет объектам наследовать свойства и методы от других объектов. Это основа для реализации наследования и повторного использования кода в языке. Прототипы играют ключевую роль в структуре и поведении объектов, позволяя создавать более модульный и поддерживаемый код.
Другими словами, прототипы позволяют объектам "наследовать" свойства и методы от других объектов, облегчая повторное использование кода и организацию структуры программ.
👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти к Списку всех вопросов на Frontend Developer. Ставь 👍 если нравится контент.
🔐 База собесов | 🔐 База тестовых