var array=[{'id':80,'price':50},{'id':20,'price':30}];
//第一种方法
var pricesA=0;
for(var i=0;i<array.length;i++){
pricesA = pricesA + array[i].price;
}
alert(pricesA);
//第二种方法
var pricesB = array.reduce((p,e)=>p+e.price,0);
alert(pricesB);
如果数值是被 “ ” 包起来的String,那么需要使用 parseInt() 或者 parseFloat(),
var array=[{'id':80,'price':"50"},{'id':20,'price':"30"}];
//第一种方法
var pricesA=0;
for(var i=0;i<array.length;i++){
pricesA = pricesA + parseInt(array[i].price);
}
alert(pricesA);
//第二种方法
var pricesB = array.reduce((p,e)=>p+ parseInt(e.price),0);
alert(pricesB);
如果数组是后台 传过来的JSON数组,那么需要在JSP文件中进行处理:
var array=[{"aa":"123","bb":"345"},{"aa":"123","bb":"345"}];
var pricesC = 0;
<c:forEach var="var" items="${array}">
priceC = priceC + ${var.SCORE};
//上面的方法也可用,而且结果是246,但是在某些编译器下会提示错误,可以改用下面方法。
priceC = priceC + parseFloat('${var.SCORE}');
</c:forEach>
alert(pricesC);