循环遍历数组中的对象,取整数值的总和
Looping through objects within an array, taking total of integer values
我试图通过数组内的对象循环,添加键'价格'的所有值。
var basket = [
{
price: "25.00",
id: "Hat"
}, {
price: "50.00",
id: "Jacket"
}
]
/*objects within array. purpose = able to use a for loop using .length as follows*/
function test() {
for(var i = 0; i < basket.length; i++){
totalPrice = 0;
alert(itemPrice);
itemNum = basket[i];
itemPrice = parseFloat(itemNum.price);
totalPrice += itemPrice;
}
alert(totalPrice);
}
我的itemPrice
警报显示循环通过两个对象,闪烁25然后50。为什么我的totalPrice
变量只存储第二个价格50?操作符+=
应该和totalPrice = totalPrice + itemPrice
一样吗?任何解释以及修复将非常感激,试图得到一个很好的理解!
第一次进入循环时,将totalPrice
设置为0。然后添加第一件商品的价格,因此totalPrice为25。然后第二次进入循环,再次设置totalPrice
为0,0 + 50 = 50。
你应该在循环之前初始化totalPrice
use reduce:
basket.reduce( function( previousValue, currentValue ){
return previousValue += parseInt(currentValue.price)
}, 0);
示例:http://jsfiddle.net/ysJS8/
https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/Reduce相关文章:
- 如何删除“;整数“;JavaScript中对象的数组
- 获取整数对象属性名称的最小值和最大值
- 按值整数筛选对象属性
- 将64位整数转换为json编码对象中的字符串的最佳实践
- 为什么当我使用变量而不是整数或字符串时初始化日期对象失败
- JavaScript 将整数数组转换为对象数组
- MVC:将对象和整数作为JSON发送到控制器
- 为什么在控制台上记录对象引用时会显示一个整数
- 将JS数组UNIX日期整数转换为JS日期对象
- 服务器将javascript对象写成字符串而不是整数
- LESS / javascript:将regexp对象转换为整数(计算)
- 为什么我的整数对象在post方法后自动转换为字符串
- 406(不可接受).尝试使用@Responsebody从spring处理函数返回对象或整数到ajax请求
- 在另一个具有整数属性的对象内的整数对象属性
- 如何将整数数组转换为对象数组
- 从对象中取出一个整数并将其赋值给一个变量
- 如何将Date对象的日期解析为整数
- 使用Lodash比较对象数组和整数数组
- 如何设置ngOptions的默认值,当options是对象时,default是一个整数ID
- 如何仅添加 2 个 JSON 数组的整数对象