什么是大数运算
大数运算顾名思义就是一些很大的数之间的运算。之所以要用大数运算算法处理原因有二:
- 我们知道计算机能表现的数字范围是有限的,超过这个范围会出现溢出。
- 在js中只有一定范围内的数才能精确到个位,超过这个范围的数是不准确的。有关js中的数字可以参考下图:
算法
在这里我以加法为例,介绍三个大数运算的方法。
方法一:常规方法
思路就是运用加法的原理,一位一位的加
方法二:利用js的奇淫技巧
JS中有很多奇淫技巧,合理运用可以让代码看起来更简洁
方法三:快速算法
前两种一位一位的加太慢了,我们可以充分利用js的精度,14位14位的算。
实际上只用一个循环就可以了,上面只是方便理解。只用一个循环的话就是这样: