【发布时间】:2018-11-12 20:35:29
【问题描述】:
我有一个对象数组
const myNumbers = [
{
top: 10,
bottom: 5,
rate: 5
},
{
top: 9,
bottom: 4,
rate: 3
},
];
我想在对它们进行任何操作之前运行一些使数字可用的函数;
const addTen = r.add(10);
const double = r.multiply(2);
还有一个接受数字并做一些数学运算的函数:
const process = (top, bottom, rate) => r.multiply(r.subtract(bottom, top), rate)
所以我的最终函数看起来像
muNymbers.map(({ top, bottom, rate }) =>
process(addTen(top), double(bottom), rate)
);
只要看看这段代码,你就会发现这两个函数已经变得非常嵌套并且不是特别清晰。我的真正问题又稍微复杂了一点,我正在努力寻找在为不同的操作选择不同的值时如何使这一点变得毫无意义。
【问题讨论】:
标签: javascript ramda.js pointfree