decimal.js解决js小数点运算精度丢失不准确示例代码
代码语言:html
所属分类:其他
代码描述:decimal.js解决js小数点运算精度丢失不准确示例代码,decimal.js是一个的任意精度十进制类型JavaScript库
代码标签: decimall 小数点 运算 精度 丢失 不准确 示例 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum=1.0,minimum=1.0,user-scalable=0" />
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/decimal.js"></script>
<script type="module">
import Decimal from '//repo.bfw.wiki/bfwrepo/js/decimal.mjs';
//加
let a = 1
let b = 6
// a 与 b 可以是 任何类型,Decimal 内部会自己处理兼容
// 下面两种都可以 可以带 new 也不可以不带 new
let res = new Decimal(a).add(new Decimal(b))
let res2 = Decimal(a).add(Decimal(b))
//减
//let a = "4"
//let b = "8"
// a 与 b 可以是 任何类型,Decimal 内部会自己处理兼容
// 下面两种都可以 可以带 new 也不可以不带 new
//let res3 = new Decimal(a).sub(new Decimal(b))
//let res4 = Decimal(a).sub(Decimal(b))
//乘
//let a = 1
//let b = 6
// a 与 b 可以是 任何类型,Decimal 内部会自己处理兼容
// 下面两种都可以 可以带 new 也不可以不带 new
//let res5 = new Decimal(a).mul(new Decimal(b))
//let res6 = Decimal(a).mul(Decimal(b))
//除
//let a = 1
//let b = 6
// a 与 b 可以是 任何类型,Decimal 内部会自己处理兼容
// 下面两种都可以 可以带 new 也不可以不带 new
//let res = new Decimal(a).div(new Decimal(b))
//let res = Decimal(a).div(Decimal(b))
//注意
//上面的结果是 一个 Decimal 对象,你可以转换成 Number 或则 String
//let res = Decimal(a).div(Decimal(b)).toNumber() // 结果转换成 Number
//let res = Decimal(a).div(Decimal(b)).toString() // 结果转换成 String
//关于保存几位小数相关
y = new Decimal(987000.000)
y.sd() // '3' 有效位数
y.sd(true) // '6' 总共位数
// 保留 多少个位数 (小数位 会补0)
x = 45.6
x.toPrecision(5) // '45.600'
// 保留 多少位有效位数(小数位 不会补0,是计算的有效位数)
x = new Decimal(9876.5)
x.toSignificantDigits(6) // '9876.5' 不会补0 只是针对有效位数
// 保留几位小数 , 跟 js 中的 number 一样
//toFixed
x = 3.456
// 向下取整
x.toFixed(2, Decimal.ROUND_DOWN) // '3.45' (舍入模式 向上0 向下1 四舍五入 4,7)
// 向上取整
x = new Decimal(123.4567)
y = new Decimal('123456.7e-3')
z = new Dec.........完整代码请登录后点击上方下载按钮下载查看
网友评论0