我是靠谱客的博主 鲤鱼机器猫,这篇文章主要介绍javascript(js)中使用BigDecimal,现在分享给大家,希望可以做个参考。

了解了java中使用BigDecimal之后改在javascript上使用BigDecimal

javascript上使用BigDecimal 与java中使用还是有很大区别的

定义BigDecimal类型

复制代码
1
2
3
var x = new BigDecimal(); 此时的 x相当于一个空的BigDecimal类型的数据

将数据改为BigDecimal类型

复制代码
1
2
3
4
如修改 var x = 1; 相当于将x的值重新定义在赋值给x x = new BigDecimal(""+x);

多加注意
new BigDecimal(); 括号中只能是字符串类型的数字如果是变量 参考我写的方式(“”+x)

js中的BigDecimal方法与java中的还是有一些区别的
常用的加减乘除是相同的

java中一些扩展方法在js中无法使用 也有可能是我在网上找的js文件不齐全造成的
如上一篇 java中用到的
这个方法:x.divide();
js中就只有除法运算的功能 java中有扩展的参数进行一些其他操作

js中BigDecimal的四舍五入

使用的方法

复制代码
1
2
3
4
x.setScale(10, BigDecimal.ROUND_HALF_DOWN); 其中10表示保留小数位数 BigDecimal.ROUND_HALF_DOWN表示四舍五入的规则

其他四舍五入规则

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
ROUND_CEILING Rounding mode to round towards positive infinity. 向正无穷方向舍入 ROUND_DOWN Rounding mode to round towards zero. 向零方向舍入 ROUND_FLOOR Rounding mode to round towards negative infinity. 向负无穷方向舍入 ROUND_HALF_DOWN Rounding mode to round towards "nearest neighbor" unless both neighbors are equidistant, in which case round down. 向(距离)最近的一边舍入,除非两边(的距离)是相等,如果是这样,向下舍入, 例如1.55 保留一位小数结果为1.5 ROUND_HALF_EVEN Rounding mode to round towards the "nearest neighbor" unless both neighbors are equidistant, in which case, round towards the even neighbor. 向(距离)最近的一边舍入,除非两边(的距离)是相等,如果是这样,如果保留位上的数字是奇数,使用ROUND_HALF_UP ,如果是偶数,使用ROUND_HALF_DOWN ROUND_HALF_UP Rounding mode to round towards "nearest neighbor" unless both neighbors are equidistant, in which case round up. 向(距离)最近的一边舍入,除非两边(的距离)是相等,如果是这样,向上舍入, 1.55保留一位小数结果为1.6 ROUND_UNNECESSARY Rounding mode to assert that the requested operation has an exact result, hence no rounding is necessary. 计算结果是精确的,不需要舍入模式 ROUND_UP Rounding mode to round away from zero. 向远离0的方向舍入

如有错误望指正 谢谢

BigDecimal.js文件:我使用的

网上找的大佬的 点击跳转

最后

以上就是鲤鱼机器猫最近收集整理的关于javascript(js)中使用BigDecimal的全部内容,更多相关javascript(js)中使用BigDecimal内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部