BigNumber.js-文档

特征

  1. 整数和小数
  2. 简单的API,但功能齐全
  3. 比Java的BigDecimal的JavaScript版本更快,更小,甚至更容易使用
  4. 缩小并压缩8 KB
  5. 复制toExponentialtoFixedtoPrecisiontoStringJavaScript的数字类型的方法
  6. 包含toFraction和正确舍入的squareRoot方法
  7. 支持加密安全的伪随机数生成
  8. 没有依赖关系
  9. 广泛的平台兼容性:仅使用JavaScript 1.5(ECMAScript 3)功能
  10. 全面的文档和测试集

用法

加法 plus

  • 语法.plus(n [, base])
  • 参数值
  • n (必需): number|string|BigNumber 参与计算的数字
  • base: number 进制 (默认为十进制)
  • 返回值
    BigNumber
  • 举例
1. 0.1 + 0.2                       // 0.30000000000000004
2. x = new BigNumber(0.1)
3. y = x.plus(0.2)                 // '0.3'
4. BigNumber(0.7).plus(x).plus(y)  // '1'
5. x.plus('0.1', 8)                // '0.225'

减法 minus

  • 语法.minus(n [, base])
  • 参数值
  • n (必需): number|string|BigNumber 参与计算的数字
  • base: number 进制 (默认为十进制)
  • 返回值
  • BigNumber
  • 举例
1. 0.3 - 0.1                       // 0.19999999999999998
2. x = new BigNumber(0.3)
3. x.minus(0.1)                    // '0.2'
4. x.minus(0.6, 20)                // '0'

乘法 multipliedBy

  • 语法.times(n [, base])
  • 参数值
  • n (必需): number|string|BigNumber 参与计算的数字
  • base: number 进制 (默认为十进制)
  • 返回值
  • BigNumber
  • 举例
1. 0.6 * 3                         // 1.7999999999999998
2. x = new BigNumber(0.6)
3. y = x.multipliedBy(3)           // '1.8'
4. BigNumber('7e+500').times(y)    // '1.26e+501'
5. x.multipliedBy('-a', 16)        // '-6'

除法 dividedBy

  • 语法.div(n [, base])
  • 参数值
  • n (必需): number|string|BigNumber 参与计算的数字
  • base: number 进制 (默认为十进制)
  • 返回值
  • BigNumber
  • 举例
1. x = new BigNumbejr(113)
3. x.dividedBy(y)                  // '3.14159292035398230088'
4. x.div(5)                        // '71'
5. x.div(47, 16)                   // '5'

注意

结果转换

x = new BigNumber(255.5)
x.toExponential(5)                  // "2.55500e+2"
x.toFixed(5)                        // "255.50000"
x.toPrecision(5)                    // "255.50"
x.toNumber()                        //  255.5

BigNumber.js数值计算-解决精度问题相关推荐

  1. 技术内参 | 数据分析,如何解决精度丢失的问题?

    本文由神策数据技术大咖皮成投稿 谈到大数据技术,数据采集和计算是永远绕不开的话题,采集的准确度.计算的精度都是做数据分析的前提条件. 神策数据服务的客户覆盖互联网各个细分领域,其中不乏有做目前大火的虚 ...

  2. big.js、bignumber.js 和 decimal.js 的区别

    原文网址:big.js.bignumber.js 和 decimal.js 的区别_IT利刃出鞘的博客-CSDN博客 简介 说明 本文介绍3个JavaScript的数字处理第三方库的区别,它们是:bi ...

  3. 加mp4文件后js失效_Jquery方法load之后导致js失效解决方法

    Jquery方法load之后导致js失效解决方法 >>>>>>>>>>>>>>>>>>> ...

  4. [js] 如何避免JS浮点运算的精度问题(例:0.1+0.7=0.7999999999999999)

    [js] 如何避免JS浮点运算的精度问题(例:0.1+0.7=0.7999999999999999) function precision(num1,num2){num1Length = num1.t ...

  5. IE6下使用jquery.bgiframe.js插件解决下拉框覆盖浮动层、Dialog的问题

    IE6下使用jquery.bgiframe.js插件解决下拉框覆盖浮动层.Dialog的问题 参考文章: (1)IE6下使用jquery.bgiframe.js插件解决下拉框覆盖浮动层.Dialog的 ...

  6. [转] js前端解决跨域问题的8种方案(最新最全)

    [转] js前端解决跨域问题的8种方案(最新最全) 参考文章: (1)[转] js前端解决跨域问题的8种方案(最新最全) (2)https://www.cnblogs.com/chris-oil/p/ ...

  7. vue js中解决二进制转图片显示问题

    一:问题 工作中碰到的问题,在处理接口返回的验证码图片时,由于返回的是encode编码代码,在js端获取到数据之后,通过函数encodeURI()来进行解码,之后可以通过在src中设置来实现图片显示: ...

  8. 利用PDF.JS插件解决了本地pdf文件在线浏览问题(根据需要隐藏下载功能,只保留打印功能)

    利用PDF.JS插件解决了本地pdf文件在线浏览问题(根据需要隐藏下载功能,只保留打印功能) 参考文章: (1)利用PDF.JS插件解决了本地pdf文件在线浏览问题(根据需要隐藏下载功能,只保留打印功 ...

  9. npm突然找不到D:\nodejs\node_modules\npm\bin\npm-cli.js的解决方法

    npm突然找不到D:\nodejs\node_modules\npm\bin\npm-cli.js的解决方法 参考文章: (1)npm突然找不到D:\nodejs\node_modules\npm\b ...

最新文章

  1. android 启动app过程,Android P APP冷启动过程全解析(之四)
  2. golang 切片 slice 去掉重复元素
  3. Android 监听 Android中监听系统网络连接打开或者关闭的实现代码
  4. BZOJ1415[Noi2005]聪聪和可可——记忆化搜索+期望dp
  5. Valid Sudoku
  6. android7.0 蓝牙定位,BluetoothAdapter在Android6.0/7.0+以上startDiscovery不能发现蓝牙设备问题...
  7. django mysql 过滤所有id_Django数据库中常用的过滤操作
  8. BAE3.0还不支持本地写入文件
  9. Spark Scala当中reduceByKey的用法
  10. 裁员见司品,程序员趁早准备退路
  11. mysql 基本操作和问题
  12. webp批量转换jpg_转换文件格式快人一步!右键菜单直接转换,支持图片、文档、视频等……...
  13. 基于better-scroll实现的类似ios选择器
  14. redis安装----非基于lnmp安装
  15. Tor源码分析十 -- 连接和链路
  16. 宝塔面板防火墙安装和使用教程详解
  17. win10系统云服务器配置,win10系统云服务器配置
  18. 美国信息互换标准代码 ASCⅡ
  19. 代码覆盖率工具lcov
  20. 根据ip查询真实地址

热门文章

  1. Win10安装fliqlo时钟屏保教程
  2. Airbnb如何应用AARRR策略成为全球第一民宿平台
  3. go install报错no install location for directory outside GOPATH
  4. 处理任意类型链表模板
  5. Python生成随机数字/字符
  6. js 公众号 获取code_微信公众号开发之网页授权登录及code been used 解决!
  7. 人机协作机器人发展趋势_目前国内机器人发展存在三大困境,人机协作被广泛关注有以下几点原因...
  8. 上传文件到OOS服务器
  9. Django的语言模板
  10. d3 企业图谱 仿天眼查 企查查