我有一个功能,用户可以输入“5”,“10”,“0.47”,“0.5”等数字。
而且,每当用户输入数据时,数据就会保存在一个数组中。
我正在使用以下代码在数组中添加所有数字:
$scope.uTotal = uMiles.reduce(addPrice, 0)
function addPrice(a, b) {
return a + b;
}
上面的代码成功地将所有数字相加,但是如果用户输入十进制值,则不会添加十进制值。
例如:
当前数组中的值在下面,这是通过执行 console.log 收集的:
运行上述功能后,屏幕上的输出为:
总计= 5
但实际上它应该显示总计= 6.88
无论用户输入多少数字,我如何确保其加起来并准确地显示在前面。
最佳答案
在函数内部使用 parseFloat()
,您应该会很好:
function addPrice(a, b)
{
return a + parseFloat(b);
}