Applocative编程定义:
函数A作为参数提供给函数B
var nums = [1,2,3,4,5];
function doubleAll(array){
return _.map(array,function(n){
return n*2;
})
}
doubleAll(nums)
// [2,4,6,8,10]
function average(array){
var sum = _.reduce(array,function(a,b){
return a+b;
})
return sum/_.size(array)
}
average(nums)
// 3
function onlyEven(array){
return _.filter(array,function(n){
return (n%2) === 0
})
}
onlyEven(nums);
// [2,4]
以上为Applicative编程的三个典型例子
函数map,reduce,filter是最简单和最具有象征意义的Applicative函数式编程。