js函数表现形式

参见:
      http://www-128.ibm.com/developerworks/cn/web/wa-javascript.html

下面对 JavaScript 中的函数式风格作一快速总结:

  • 函数并不总是需要名称。 (匿名函数)
  • 函数可以像其他值一样分配给变量。
  • 函数表达式可以编写并放在括号中,留待以后应用。
  • 函数可以作为参数传递给其他函数。

在 JavaScript 中,可以编写匿名函数或没有名称的函数。为什么需要这样的函数?请继续往下读,但首先我们将学习如何编写这样一个函数。如果拥有以下 JavaScript 函数:


典型的函数

				
function sum(x,y,z) {
  return (x+y+z);
}

然后对应的匿名函数看起来应当如下所示:

 

匿名函数

				
function(x,y,z) {
  return (x+y+z);
}

要使用它,则需要编写以下代码:

				
var sum = function(x,y,z) {
  return (x+y+z);
}(1,2,3);
alert(sum);

 

使用函数赋值

也可以将函数作为值使用。还可以拥有一些所赋值是函数的变量。在最后一个示例中,还可以执行以下操作:

 

				
var sum = function(x,y,z) {
  return (x+y+z);
}
alert(sum(1,2,3));

在上面的示例中,为变量 sum 赋的值是函数定义本身。这样,sum 就成了一个函数,可以在任何地方调用。

 

JavaScript 允许用两种方式调用函数

				
alert (“Hello, World!");


    函数表达式

				
(alert) (“Hello, World!");

所以也可以编写以下代码:

 

( function(x,y,z) { return (x+y+z) } ) (1, 2, 3);// 定义函数之后就可以立即使用它

 

函数可以作为参数传递给其他函数

 

也可以将函数作为参数传递给其他函数。虽然这不是什么新概念,但是在后续的示例中大量的使用了这个概念。可以传递函数参数,如 清单 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 的值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值