я застрял в решении задачи. Уже весь свой маленький мозг выскреб.
вот что мы имеем в начале.
function NamedOne(first, last) {
this.firstName = first;
this.lastName = last;
this.fullName = this.firstName + ' ' + this.lastName;
}
var namedOne = new NamedOne("Ваня","Иванов")
что мы получаем
namedOne.firstName // -> "Ваня"
namedOne.lastName // -> "Иванов"
namedOne.fullName // -> "Ваня Иванов"
теперь же я изменяю свойства имени и фамилии
namedOne.firstName = "Петя"
namedOne.firstName // -> "Петя" //вывело!
namedOne.lastName = "Петров"
namedOne.lastName // -> "Петров" //вывело!
а вот и проблема, полное имя не изменилось.
namedOne.fullName // -> "Ваня Иванов" // вывело старое значение
надо сделать так что бы оно выводило измененные значения
именно namedOne.fullName // -> "Петя Петров"
this.fullName = function() {
return this.firstName + ' ' + this.lastName;
};
через функцию не получается потому, что вызов namedOne.fullName
() должен быть без скобок