略谈函数式编程
相对于面向对象编程(Object-oriented programming)关注的是数据而言,函数式编程关注的则是动作,其是一种过程抽象的思维,就是对当前的动作去进行抽象。
函数式编程的好处
使代码更简洁,优雅
便于后期的代码维护
能够大大提升开发效率
函数式编程的特点
函数是第一等公民
函数是纯函数
无副作用
同输出同输入
无副作用即函数运行时内部的操作不会对外部产生影响
12345678910// 无副作用的纯函数function addf(x,y){ return x + y;}//不是纯函数,调用了外部的不确定值,带有副作用,var msg = 'hello world'function print(){ return msg}
将多个函数合并成一个函数运行
函数合成/高级函数(compose)
123456789function addf(x,y){ return x + y;}function print(_msg){ return _msg;}//函数addf(1,2)是print函数的_msg参数var msg = p
2019-10-12
函数式编程