也可以将函数作为参数传递给其他函数。虽然这不是什么新概念,但是在后续的示例中大量的使用了这个概念。可以传递函数参数,如清单10所示。
- 清单 10. 将函数作为参数传递,并应用该函数
- var passFunAndApply = function (fn,x,y,z) { return fn(x,y,z); };
- var sum = function(x,y,z) {
- return x+y+z;
- };
- alert( passFunAndApply(sum,3,4,5) ); // 12
执行最后一个alert语句输出了一个大小为12的值。
使用函数式概念
前一节介绍了一些使用函数式风格的编程概念。所给的示例并没有包含所有的概念,它们在重要性方面也没有先后顺序,只是一些与这个讨论有关的概念而已。下面对JavaScript中的函数式风格作一快速总结:
◆函数并不总是需要名称;
◆函数可以像其他值一样分配给变量;
◆函数表达式可以编写并放在括号中,留待以后应用;
◆函数可以作为参数传递给其他函数。
这一节将介绍一些有效使用这些概念编写优美的JavaScript代码的示例。