function func()
{
this.size = 50;
this.addheight = Math.sin(Math.PI/4)*(this.size/2);
}
obj1 = new func();
obj3 = new func();
obj3.size = 40;
Друзья, подскажите пожалуйста, почему в данном случае в obj3 свойству size присвоилось значение 40, а addheight осталась 50 по умолчанию в obj3, и как нужно правильно объявлять свойства в случае таких сложных выражений. Заранее спасибо
Можно использовать магию сеттеров:
class func {
constructor(){
this._size = 50;
this.addheight = Math.sin(Math.PI/4)*(this.size/2);
}
set size(value) {
this.addheight = Math.sin(Math.PI/4)*(value/2);
this._size = value;
return value;
}
get size(){
return this._size;
}
}
obj = new func();
console.log(obj);
obj.size = 40;
console.log(obj);
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Как можно вызвать событие focus() для элемента textarea, средствами кода? Чтобы произошло тоже самое, как когда нажимаешь на поле textarea мышкойТо есть...
Возникла потребность подключить к сайту сервис рассылки push-уведомленийВ js-файле, предоставляемом сервисом для работы функционала, была...