From 038ab646b7f36c719ad8e7e7a88da4a2b8280920 Mon Sep 17 00:00:00 2001
From: chensiAb <chenchenco03@163.com>
Date: Fri, 29 Nov 2024 17:05:04 +0800
Subject: [PATCH] feat:tools函数-添加精确保留小数方法

---
 common/Tools.js |   26 ++++++++++++++++++++++++++
 1 files changed, 26 insertions(+), 0 deletions(-)

diff --git a/common/Tools.js b/common/Tools.js
index 9d692ac..4c0ff6d 100644
--- a/common/Tools.js
+++ b/common/Tools.js
@@ -652,6 +652,32 @@
             }
         };
     }
+    /**
+     * 精确保留小数点几位数, 自动补零, 四舍五入
+     *  修复 toFixed 四舍六入五讨论的问题
+     * @param {Number|String} num 数值
+     * @param {Number} [digit=0] 小数点后位数
+     * @returns {String|NaN}
+     */
+    static accFixed(num, digit = 0) {
+        const number = parseFloat(num);
+        if (isNaN(number)) {
+            return NaN;
+        }
+        if (number >= 0) {
+            return (
+                Math.round((number + Number.EPSILON) * Math.pow(10, digit)) / Math.pow(10, digit)
+            ).toFixed(digit);
+        } else {
+            return (
+                '-' +
+                (
+                    Math.round((Math.abs(number) + Number.EPSILON) * Math.pow(10, digit)) /
+                    Math.pow(10, digit)
+                ).toFixed(digit)
+            );
+        }
+    }
 }
 
 // h5 中,实现 rem 转换 px

--
Gitblit v1.9.1