在Angular控制器中,我有:
$scope.corn = {
acres: 347.4,
fertilizer: {
arm: 0,
dist: 164.97,
other: 0
}
};
$scope.corn.fertilizer.total = _.reduce($scope.corn.fertilizer);
console.log($scope.corn);
在控制台中,我看到了:
acres: 347.4
fertilizer: Object
arm: 0
dist: 164.97
other: 0
total: 0
我非常确定声明" _.reduce()不起作用"远非事实,所以,我会改为写
有人可以向新的LoDash用户展示如何使用_.reduce将总计变量添加到对象中吗?
提前致谢!
答案 0 :(得分:2)
您希望在_.reduce
来电中进行回调。它看起来像这样:
$scope.corn.fertilizer.total = _.reduce($scope.corn.fertilizer, function(total, num) {
return total + num;
});
第一个参数是集合,第二个参数是回调。回调需要一些参数,第一个是“累加器”(如果没有定义,它将是集合的第一个元素,这个例子就是这个例子),第二个是项目的值。集合,第三个是密钥或索引(不需要)。