您现在的位置:首页 >> 前端 >> 内容

函数式编程:Applicative编程

时间:2017/9/9 9:10:00 点击:

  核心提示:Applocative编程定义:函数A作为参数提供给函数Bvar nums = [1,2,3,4,5];function doubleAll(array){return _.map(array,fun...

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函数式编程。

作者:网络 来源:juzipchy的博