Browse Source

四则运算计算bug修复

laiguoran 3 năm trước cách đây
mục cha
commit
022ed2cab5
1 tập tin đã thay đổi với 11 bổ sung2 xóa
  1. 11 2
      app/public/js/zh_calc.js

+ 11 - 2
app/public/js/zh_calc.js

@@ -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}
 })();