22. PointFree

1/27/2023 js

PointFree:我们可以把数据处理的过程定义成数据无关的合成运算,不需要用到代表数据的那个参数,只要把简单的运算步骤合成到一起,在使用这种模式之前我们需要定义一些辅助的基本运算函数。

  • 不需要指明处理的数据
  • 只需要合成运算过程
  • 需要定义一些辅助的基本运算函数

函数式编程的核心:把运算过程抽象成函数

// PointFree就是把抽象出来的函数再合成一个新的函数。(这个合成的过程其实也是抽象的过程,在这个过程是不需要关心数据的)
// Hello    World  =>  hello_world
const fp = require('lodash/fp')

const f = fp.flowRight(fp.replace(/\s+/g, '_'), fp.toLower)
console.log('f', f('Hello    World'))  // hello_world
1
2
3
4
5
6
最近更新时间: 2/4/2023, 10:01:08 AM
    강남역 4번 출구
    Plastic / Fallin` Dild