【发布时间】:2016-04-02 03:10:40
【问题描述】:
我正在尝试在 JS using Ramda 中实现一个函数,该函数接受一个对象列表并返回特定属性的总和。例如
var l = [
{a: 1, b: 2, c: 0},
{a: 1, b: 3, c: -1},
{a: 1, b: 4, c: 0},
]
func(['a', 'b'], l)
-> {a: 3, b: 9}
原则上,我需要这样的函数:
R.map(R.props($1, _), $2)
在函数式编程中实现这样的东西最优雅的方式是什么? R.map(R.props) 不工作的原因很明显。我尝试使用R.compose 或R.pipe 的一些组合,但我没有运气
【问题讨论】:
-
b属性不应该等于 9 吗? -
你完全正确!抱歉,我修好了。
标签: javascript functional-programming ramda.js