curry 的概念很简单:只传递给函数一部分参数来调用它,让它返回一个函数去处理剩下的参数。
function isBiggerThan(value) {
return function(data) {
return data >= value;
}
}
[12, 5, 8, 130, 44].filter(isBiggerThan(10)).filter(isBiggerThan(50));
Use lodash:
var curry = require('lodash').curry;
var isBiggerThan = curry(function(value, data) {
return data >= value;
});
[12, 5, 8, 130, 44].filter(isBiggerThan(10)).filter(isBiggerThan(50));