|
@@ -78,6 +78,14 @@ const ZhCalc = (function () {
|
|
|
//return zhBaseCalc.add(num1 ? num1 : 0, num2 ? num2: 0);
|
|
|
return num1 ? (num2 ? zhBaseCalc.add(num1, num2) : num1) : num2;
|
|
|
};
|
|
|
+
|
|
|
+ function sum(array) {
|
|
|
+ let result = 0;
|
|
|
+ for (const a of array) {
|
|
|
+ result = ZhCalc.add(result, a);
|
|
|
+ }
|
|
|
+ return result;
|
|
|
+ }
|
|
|
/**
|
|
|
* 减法 num1 - num2
|
|
|
* @param num1
|
|
@@ -219,7 +227,7 @@ const ZhCalc = (function () {
|
|
|
const getResult = function (num1, num2, opera) {
|
|
|
switch (opera) {
|
|
|
case '+':
|
|
|
- return add(num1, num1);
|
|
|
+ return add(num1, num2);
|
|
|
case '-':
|
|
|
return sub(num1, num2);
|
|
|
case '*':
|
|
@@ -264,6 +272,7 @@ const ZhCalc = (function () {
|
|
|
return Number(expr);
|
|
|
} else {
|
|
|
const rpnArr = this.parse2Rpn(expr);
|
|
|
+ console.log(rpnArr);
|
|
|
const result = this.evalRpn(rpnArr);
|
|
|
return result === Infinity ? null : result;
|
|
|
}
|
|
@@ -273,5 +282,5 @@ const ZhCalc = (function () {
|
|
|
},
|
|
|
};
|
|
|
|
|
|
- return {add, sub, mul, div, round, isNonZero: zhBaseCalc.isNonZero, calcExpr: ExprCalc}
|
|
|
+ return {add, sum, sub, mul, div, round, isNonZero: zhBaseCalc.isNonZero, calcExpr: ExprCalc}
|
|
|
})();
|