前端开发那些事儿

柯里化函数介绍

2021-03-10  本文已影响0人  浅浅_2d5a
/**
 * 高阶函数:如果函数符合以下条件之一,就是高阶函数
 * 1、一个函数A,接收的参数是一个函数
 * 2、一个函数A,返回值是一个函数
 * 
 * 常用的高阶函数Promise、setTimeout、arr.map等数组方法
 */ 

 /**
  * 函数的柯里化:把接收多个参数的函数变换成接收一个单一参数的函数,内部再返回调用下一个单参数函数,依次处理剩余的参数,最后统一处理所有参数的函数编码形式。
  * function fn(a){
  *      return function (b){
  *          return function (c){
  *              return a+b+c
  *           }
  *      }
  *  }
  *  let res = fn(1)(2)(3)
  * 
  */ 

柯里化实际是把简答的问题复杂化了,但是复杂化的同时,我们在使用函数时拥有了更加多的自由度。 而这里对于函数参数的自由处理,正是柯里化的核心所在。

场景:
表单多处需要同一验证时候,使用柯里化函数,能够简化代码,不必传多次相同的正则

上一篇 下一篇

猜你喜欢

热点阅读