var RPNCalculator = function() {
this.stack = [];
this.total = 0;
this.value = function() {
return this.total;
}
this.push = function(val) {
this.stack.push(val);
}
this.pop = function() {
this.stack.pop();
}
this.process = function() {
this.val1 = this.stack.pop();
this.val2 = this.stack.pop();
this.total = 0;
}
this.plus = function() {
this.process();
this.total = this.val1 + this.val2;
this.stack.push(this.total);
}
this.minus = function() {
this.process();
this.total = this.val2 - this.val1;
this.stack.push(this.total);
}
}
如何使RPNCalculator对象继承数组方法,而无需自己创建推送和弹出方法? 例如,如果我这样做Javascript:使一个对象继承数组方法
rpnCalculator = new RPNCalculator();
rpnCalculator.push(2);
会2号添加到堆叠阵列
你最好的选择是不使用'.stack'财产,而是让'RPNCalculator'例如阵列等。 – Bergi