简述
本文参考阮一峰博客中的函数式编程初探,计划也阅读http://www.defmacro.org/ramblings/fp.html 这篇文章
- 函数式编程是一种编程范式,就是如何编写程序的方法论,主要思想就是把运算过程尽量携程一系列函数的嵌套,比如
特点
1.函数是“第一等”公民
就是函数和其他数据类型处于平等地位。JavaScript中提现的很明显,函数可以赋值给其他变量也可以作为参数传递
2.只用表达式,不用语句
ps:不懂什么意思。。。说表达式是运算过程,总有返回值;语句是执行某种操作。难道函数里不传返回值的叫语句,传返回值的叫表达式?
3.没有副作用:不会修改外部变量的值,返回的是新的变量,比如array.slice()函数返回的就是新数组,没有副作用
4.不修改状态
ps:也不太懂。。感觉和没有副作用那条一个意思啊。。
5.引用透明:函数的运行不依赖外部变量,只依赖传入的参数