Как описывать методы в объекте JS?

Подскажите в чем разница описания методов в объекте? Просто в первом случае метод описывается в каждом экземпляре объекта, а во втором в прототипе объекта. Грубо говоря во втором варианте мы избегаем дублирования кода???

Заранее всем спасибо за ответы!

function Car(name, year) {
    this.name = name;
    this.year = year;
    this.getYear = () => new Date().getFullYear() - this.year;
}


function Car(name, year) {
    this.name = name;
    this.year = year;
}

Car.prototype.getYear = () => new Date().getFullYear() - this.year;


5d42e68cda240835185206.png
  • Вопрос задан
  • 605 просмотров
Решения вопроса 1
Не дублирования, а затрат на создание вот этого объекта () => new Date().getFullYear() - this.year;
Кроме того в первом случае вы присваиваете функцию проперти объекта а во втором создаете метод
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы