Может кто-нибудь объяснить, почему функции sum и mul не работают в следующих случаях:
https://jsfiddle.net/jcq5010/xdvwh9s4/
Я знаю, что могу просто вернуть this.v1 + this.v2, иthis.v1 * this.v2, но я надеялся написать его достаточно гибким, чтобы обрабатывать любое количество новых свойств и значений, созданных в read ().
Это для сложного вопроса в javascript.info,Гибкость не является частью вопроса, но мне было бы любопытно, если бы это было возможно.
read() {
this.v1 = parseInt(prompt('Please give a value:'));
this.v2 = parseInt(prompt('Please give another value:'))
},
sum() {
let result = 0;
for(let prop in calculator){
result += this.prop
};
return result
},
mul() {
let result = 0;
for(let prop in calculator){
result *= this.prop
};
return result
},
};
calculator.read();
alert( calculator.sum() );
alert( calculator.mul() );
calculator.read () должен добавить свойства v1 и v2, каждый из которых имеет значение, заданное через приглашение
alert (calculator.sum ());должен предупреждать суммой значений v1 и v2 (+ любые другие, созданные в read ()
alert (calculator.mul ()); должен предупреждать произведение значений v1 и v2 (+любые другие созданные в read ()