JS超过16位的数字如何进行加减乘数运算

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS超过16位的数字如何进行加减乘数运算相关的知识,希望对你有一定的参考价值。

假如变量a,b为20位数,现在要对它进行如下运算
for (i=a;i<b;i++)

alert(i);

结果发现i不会增加,谁能告诉我怎么回事吗?谢谢了~~
如果是JS系统问题,能告诉我处理这类问题的方法吗?

参考技术A 这种情况只能把它当做字符串处理

假如a为:1000000000012345
b为:1000000000023456
var a = "10000000000000012345";
var b = "10000000000000034567";
var temp1 = a.substr(a.length-5,a.length);
var temp2 = b.substr(bb.length-5,b.length);
for(var i=parseFloat(temp1);i<parseFloat(temp2);i++)

alert(i);

如果数字比较特别,就不能用这种方式
这只是一种思路,可以灵活应用本回答被提问者采纳
参考技术B 可以计算,超出范围结果会以指数表示,可能存在精度损失 参考技术C 使用位运算吧

以上是关于JS超过16位的数字如何进行加减乘数运算的主要内容,如果未能解决你的问题,请参考以下文章

BigDecimal 精准加减乘除

js负数能直接进行加减运算吗?

java中BigDecimal加减乘除基本用法

js关于两个字符串的加减乘除运算

java中如何实现字符与数字加减运算

js实现的不可点击加减乘数的计算器