匿名函数有形参的时候,就可以传递相应的实参:
(function(a, b)
{
alert(a + " and " + b)
}
)("a", "b")// 返回"a and b"
匿名函数没有形参的时候,可以用arguments来处理:
(function()
{
var str = ""
for(i = 0i <arguments.lengthi ++ )
{
str += arguments[i] + " , "
}
alert(str)
}
)("a", "b", "c", "d")//返回"a , b , c , d , "
本节讲解 3 种原生JS的匿名函数。
匿名函数又叫立即执行函数。
因为是匿名的,所以不能被调用。
因为不能被调用,所以不立即执行的话就没意义了。
因为立即执行,所以在执行完之后就会被销毁。
第一种(常用)
( function(){…} )()
第二种(常用)
( function(){…}() )
第三种(不常用)
~function(){…}()
前两种写法,返回值都是正常的。
第三种写法的返回值会比较奇怪,所以很少用。
第一种写法
在控制台输出 1
第二种写法
在控制台输出 2
第三种写法
在控制台输出 -4
在控制台输出2
假设第三种写法的返回值是未知数 x。
则得到的返回值是:-(x + 1)