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