Agent Skills
返回列表
Decimal.js 十进制数学

Decimal.js 十进制数学

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f1b049da/eie20260764 技能到你的 AI 助手中。

技能介绍

解决的痛点

在前端处理合同金额汇总、KPI 环比或税率试算时,number 的浮点精度缺陷会让结果出现偏差:比如多级金额累加后尾数对不上,四舍五入到分的规则在不同链路中不统一,甚至出现“差不多”的模糊展示。这类问题在财务相关场景中直接影响数据可信度,但又容易被开发者忽略。

核心能力与实现步骤

这个技能基于 decimal.js 封装十进制数学能力,核心做法是将精度和舍入配置固化到模块常量,避免魔法数散落。具体实现时,先统一 Decimal.set 配置,再封装 sumMoney 这类业务函数处理金额汇总;UI 层绑定字符串入参,展示时用 toFixed(2) 规范小数位。自测环节覆盖汇总、含税拆分、非法输入等场景,文档中会注明与 bigjs-money-math 的选型关系,方便项目内统一技术栈。

适用边界与注意点

  • 金额构造必须用字符串,禁止直接用 number 传入,避免精度损失;
  • 除零或非法输入返回中文错误提示,而非抛异常导致白屏;
  • 已使用 Big.js 的链路不要中途换成 Decimal,若切换需统一舍入规则;
  • 不将财务制度级审计承诺写入前端试算文案,仅聚焦计算逻辑的准确性。

使用场景

  • 处理多级合同金额汇总时,需要确保累加结果无浮点偏差并符合财务精度要求
  • 计算KPI环比数据时,需要稳定的小数处理和统一舍入规则避免数据失真
  • 构建税率试算链路时,需要明确舍入模式(如四舍五入到分)保证计算一致性
  • 在既有Big.js的项目中,需要评估是否切换到Decimal并统一舍入逻辑

适合人员

  • 前端开发者,需要处理财务相关数据的精度和舍入问题
  • 财务系统开发人员,要实现合同金额汇总和KPI计算的准确逻辑
  • KPI数据分析师,需要稳定的环比计算结果用于业务决策
  • 使用Big.js或decimal.js的开发者,需要规范项目中的舍入规则