栗子:add("2312421212512521111112421412412","123")
float型浮点数相加会出现问题,如0.1+0.3
js数组求和的方法
vararray = [1,2,3,4,5]
varsum =0
1.for循环
for(leti =0i <array.lengthi++) {
sum += array[i]
}
2.forEach
array.forEach(ele=>{
sum += ele
})
3.归并方法reduce()和 reduceRight()
//这两个方法都会迭代数组的所有项,然后构建一个最终返回的值。其中, reduce()方法从数组的第一项开始,逐个遍历到最后。
//而 reduceRight()则从数组的最后一项开始,向前遍历到第一项
varsum1 = array.reduce(function(prev, next, index, array){
returnprev + next
})
varsum2 = array.reduceRight(function(last, before, index, array){
returnlast + before
})
4.eval()
eval(array.join("+"))
不是在另外一个问题回答你了吗。。。需要用到大数运算类BigInt.js,看附件
<html><head>
<meta http-equiv="Content-Type" content="text/html charset=utf-8" />
<title>BigInt.html</title>
<script src="BigInt.js"></script>
<script>
// 大数运算
function bigCount(){
var a = new BigInt("100000000000000400")
var b = new BigInt("100000000000000300")
var c=bigint_plus(a,b)//大数加法
var d=bigint_minus(a,b)//大数减法
alert("和:"+c)
alert("差:"+d)
}
</script>
</head>
<body onload="bigCount()">
</body>
</html>