网站制作学习网JS脚本→正文:javascript 匿名函数
字体:

javascript 匿名函数

JS脚本 2012/10/8 12:34:03  点击:不统计

转载%77%77%77请%2E%66%6F%72%61%73%70%2E%63%6E注明

在开始听到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中就用到了匿名函数。


原载于:本文原载于www.forasp.cn

·上一篇:jquery获取从子frame获取兄弟frame节点并赋值 >>    ·下一篇:jquery-1.6.4.min.js在IE8操作checkbox的Bug >>
推荐文章
最新文章