我试图在数组中添加一些值,但不是输出总和,而是打印彼此相邻的2个值。
我的数组是:
$scope.values = [
{amount: 5},
{amount: 5}
]
我的功能是:
$scope.total = function() {
var total = 0;
angular.forEach($scope.values, function(item) {
total += item.amount;
})
return total;
}
当我致电{{ amountRemaining() }}
时,它会显示" 55"而不是10。
当我将另一个对象推送到值为6的数组时,它会显示" 556"。
要添加的另一个注意事项是,当我调用{{values}}时,它会将5放在""中,我认为这是罪魁祸首。
"amount":"05"
我如何确保数字是整数?
答案 0 :(得分:2)
你应该明确强制它。
total += Number(item.amount);
或
total += parseInt(item.amount);
后者将努力从参数中提取任何有效数字,第一个将检查它是否为数字并解析它或是NaN。