函数式编程--为什么要学习函数式编程?
函数式编程(Functional Programming,FP)
什么是函数式编程?
-
通过纯函数来实现一些细粒度的函数,然后把这些细粒度的函数组合成功能更强大的函数,这一过程就是函数式编程,经典函数式编程库:lodash
-
函数式编程是编程范式之一,其它还有:面向过程编程、面积对象编程
函数式编程的思维方式
-
函数式编程中的函数批的不是程序中的函数(方法),而是数学中的函数即数据之间的映射关系,例如y=sin(x),x和y的关系,
-
相同的输入始终要得相同的输出(纯函数)
// 非函数式编程
let num1 = 2
let num2 = 3
let sum = sum1 + sum2
console.log(sum)
// 函数式编程
function add(n1,n2){
return n1 + n2
}
let sum = add(1,2)
console.log(sum)
为什么要学习函数式编程?
- 函数式编程随着React的流行受到越来越多的关注
- Vue3 也开始拥抱函数式编程
- 函数式编程可以抛弃 this
- 打包过程中可以更好的利用 tree shaking 过滤无用代码
- 方便测试、方便并行处理
- 有很多库可以帮助我们进行函数式开发:lodash、underscore、ramda