现在我正在处理Web应用程序中的分类帐程序。我使用angularJS来处理事件,但它处理实际计算的原始Javascript
var onEntriesSuccess = function(data) {
var sum = 0;
var isDebit = ($scope.account.active == "D" ? true : false);
angular.forEach(data, function(value, key){
sum += (isDebit ? value.debit - value.credit : value.credit - value.debit);
value.balance = sum;
});
$scope.entries = data;
}
这似乎工作得很好;然而,在对我的测试用例运行它时,我发现它失败了,因为当总和= 10496.82并试图减去6912.00时,它出现了
3584.8199999999997
我之前从未遇到过这样的错误,起初我认为它是浮点数并将值从6912.02切换到6912.00。但是,这似乎无法解决任何问题。有人可以解释一下吗?谢谢
答案 0 :(得分:1)