javascript 匿名函数
2014-09-12来源:易贤网

在开始听到javascript匿名函数就糊涂,对匿名函数仔细研究了一下,也就是那么回事。

首先看一下javascript的函数

1.一般函数定义

function name(args){//statement语句}

调用:name(args);

例子

<script language="javascript">

function add(x,y){

alert(x+y);

}

add(1,2);

</script>

2.采用函数直接命名的方式

var functionname =function(args){//statement语句}

还是上面的函数例子

<script language="javascript">

var add =function (x,y){alert(x+y);}

add(1,2);

</script>

3.采用对象的方式

var functionname =new Function("args","statement语句");

还是上面的函数例子

<script language="javascript">

var add = new Function("x","y","alert(x+y)");

add(1,3);

</script>

然后看匿名函数是如何定义的,看上面的一半函数的使用都会有一个函数名或者对象,从匿名函数这个名词中就可以知道,匿名函数是不需要名字的。我们从第二种的直接命名方式中演变javascript匿名函数

原来语法var functionname =function(args){//statement语句}

那么从前面赋值看,后面的返回一函数并给了定义的名称,从调用看是functionname()直接将原来的函数名称加括号,那么我们演变一下

function(args2){//statement语句}(args1)

直接看来,args1 就是传递给args2的,但在实际操作例子中:

<script language="javascript">

function(x,y){alert(x+y);}(1,2);

</script>

这样操作是不成功的。

为什么?因为function必须返回给一个定义的名称,那么我们采用匿名函数必须把其独立出来

<script language="javascript">

(function(x,y){alert(x+y);})(1,2);

</script>

运行成功,这样就实现了匿名函数

在jquery中就用到了匿名函数。

更多信息请查看IT技术专栏

2025公考·省考培训课程试听预约报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
推荐信息