高阶函数

高阶函数:如果一个函数符合下面2个规范中的任何一个,那该两数就是高阶函数

  1. 若A函数,按收的参数是一个函数。那么A就可以称之为高阶函数
  2. 若A函数,调用它所产生的返回值依然是一个函数,那么A就可以称之为高阶函数

常见的高阶函数有:Promise、 setTimeout、arr.map() 等等

函数的柯里化:通过函数的调用,继续返回函数的方式,实现多次接受参数最后统一处理的函数编码形式。

高阶组件(High Order Component 简称 HOC)

  1. HOC 不是 React 提供的 API, 而是一种高级的设计模式
  2. HOC 是一个函数,接收组件作为参数,返回一个新组件
  3. 普通组件返回的是 UI,HOC 返回的是一个新组件
  4. HOC 不能修改参数组件,只能传入组件所需的 props
  5. HOC 是一个没有副作用的纯函数
  6. HOC 除了必须填入被包裹的组件参数以外,其余参数根据需求增加
  7. HOC 不关心数据如何使用,包裹组件不关心数据从哪里来(HOC 管理数据,包裹组件负责数据渲染)
  8. HOC 和包裏组件直接唯一的契合点就是 props

使用场景/总结: