mathjs使用简记

作用

  • 解决 JS 小数计算精度问题(0.1 + 0.2 ≠ 0.3)
  • 开启 BigNumber 高精度计算模式
  • 可设置保留指定位数有效数字,计算更安全准确

基本用法

复制代码
import { create, all } from 'mathjs'
const config = {
  number: 'BigNumber', // 开启高精度计算
  precision: 20 // 保留20位有效数字
}
const math = create(all, config)


// 加
math.add(0.1, 0.2)       // 0.1 + 0.2

// 减
math.subtract(0.3, 0.1)  // 0.3 - 0.1

// 乘
math.multiply(0.1, 0.2)  // 0.1 * 0.2

// 除
math.divide(1, 3)        // 1 / 3

// 计算结果是 BigNumber 对象,需要转成正常数字/字符串
const res = math.add(0.1, 0.2)

res.toNumber()  // 转数字 0.3
res.toString()  // 转字符串 "0.3"
math.round(res, 2) // 保留2位小数

使用场景

  • 金额、价格、税费计算
  • 涉及小数的加减乘除
  • 科学计算、高精度数据
相关推荐
IT_陈寒16 分钟前
JavaScript实战技巧总结:深挖数组遍历的性能陷阱与实战解法
前端·人工智能·后端
步行cgn24 分钟前
为什么既要 web.xml 又要 springmvc.xml?能不能只配一个?
xml·前端·hive
风骏时光牛马31 分钟前
大模型综合能力评测:多维度性能与对齐效果对比
前端
winfredzhang36 分钟前
从零手写一个毛玻璃风格的页面搭建台:单文件 HTML 实现组件放置、面板磁吸与图层管理
前端·html
葡萄城技术团队9 小时前
1000 人协同压测的环境瓶颈排查:CPU 争用与 Wi\-Fi
前端
excel10 小时前
Marked 与 Markdown 有什么区别?该怎么选?
前端
Da Da 泓11 小时前
五子棋 Web 端测试用例报告
前端·网络·websocket·网络协议·测试用例·项目
zxcvb15312 小时前
远程查看本地文档:一条轻量 Web 文件服务的工程化链路
前端·远程查看文档
niucloud-admin12 小时前
NIUCLOUD PHP SAAS上门家政使用文档:城市管理
java·前端·php
程序员大阳12 小时前
副队长JavaScript教程(50)-DOM:网页开发的起点
javascript·dom·es·节点·概念·document·关系