目录
1.为什么要学习函数式编程
函数式编程随着react流行越来越关注(如redux,高阶组件等都使用了函数式编程的思想)
vue2大量使用高阶函数,vue3也开始拥抱函数式编程
函数式编程可以抛弃this
方便测试,方便并行处理
有很多库帮助我们进行函数式编程(loadsh,ramda等)
2.什么是函数式编程
函数式编程(Functional programming,fp),fp编程范式之一,编程范式还有面向过程编程,面向对象编程。
函数式编程思维:对运算过程进行抽象
函数式编程不是程序中的函数(方法),是数学中的函数 如y=sin²(x),相同的输入 总会得到相同的输出 (纯函数)
// 非函数式编程
let num1 = 1
let num2 = 2
let sum = num1 + num2
console.log(sum)
//函数式编程
function add(a,b){
return a + b
}
let sum = add(2,3)
console.log(sum)
一句话概括:就是用来描述数据(函数)之间的映射,对运算过程的抽象