JavaScript 大整數相加後精度 如何解決

JS的數據精度問題,當數值範圍超過限制,即會轉換爲科學計數法,數據精度就會出現偏差

算法:
function bigNumberAdd(a,b) {
var res = '', c = 0;//進位值,初始c值爲0
a = a.split('');//將數據拆分爲數組
b = b.split('');//同上
while (a.length || b.length || c) {//遍歷數據
c += ~~a.pop() + ~~b.pop();//進位值c
res = c % 10 + res;//依次相加
c = c > 9;//若c大於9,c爲true,下次循環中true轉換爲1,即有進位
    }
return res.replace(/^0+/, '');//返回值
}

以上方法便可正確的實現大數據相加
bigNumberAdd('12478945645654','489789411231231523');//調用注意:參數需傳遞字符串類型
相關文章
相關標籤/搜索