Javascript 对对象数组中的数值求和的重排选择器?

Javascript 对对象数组中的数值求和的重排选择器?,javascript,reselect,Javascript,Reselect,我有一个具有以下结构的对象列表: const budgetCategories = [ {budgetName: 'budgetName', monthlyCost: '192', rollOverEnabled:true , dueDate: '02'} ]; 我正在尝试使用reselect构建一个选择器,它将对所有monthlyCost键进行求和,并返回一个总和 选择器逻辑 我用map做了一些尝试,但我觉得使用reduce是一种很好的方法。是的,您可以使用reduce根据回

我有一个具有以下结构的对象列表:

  const budgetCategories = [
    {budgetName: 'budgetName', monthlyCost: '192', rollOverEnabled:true , dueDate: '02'}
  ];
我正在尝试使用
reselect
构建一个选择器,它将对所有
monthlyCost
键进行求和,并返回一个总和

选择器逻辑
我用map做了一些尝试,但我觉得使用
reduce
是一种很好的方法。

是的,您可以使用reduce根据回调中的逻辑来减少数组 请通读这篇文章

export const getBudgetCategories = (state) => state.getIn(['budget', 'budgetCategories']);


export const getTotalMonthlyBudget = createSelector(
  getBudgetCategories,
  (budget) => { budget.reduce((data) => {console.log(data)}) }
)
 export const getTotalMonthlyBudget = createSelector(
          getBudgetCategories,
          (budget) => budget.reduce((totalsum, data) => 
              parseInt(data.monthlyCost, 10) + totalsum, 0)
)