美文网首页
柯里化、高阶函数、

柯里化、高阶函数、

作者: _William_Zhang | 来源:发表于2018-09-23 22:11 被阅读1次
    • 柯里化
    柯里化:将 f(x,y) 变成 f(x=1)(y) 或 f(y=1)x
      //柯里化之前
      function sum(x,y){
          return x+y
      }
      //柯里化之后
      function addOne(y){
          return sum(1, y)
      }
      //柯里化之前
      function Handlebar(template, data){
          return template.replace('{{name}}', data.name)
      }
      //柯里化之后
      function Handlebar(template){
          return function(data){
              return template.replace('{{name}}', data.name)
          }
      }
    
    这就是柯里化 柯里化--这里我理解为复合函数
    • 高阶函数
      在数学和计算机科学中,高阶函数是至少满足下列一个条件的函数:
      **接受一个或多个函数作为输入:forEach sort map filter reduce
      **输出一个函数:lodash.curry
      **不过它也可以同时满足两个条件:Function.prototype.bind
    高阶函数 高阶函数

    相关文章

      网友评论

          本文标题:柯里化、高阶函数、

          本文链接:https://www.haomeiwen.com/subject/qnvqoftx.html