JavaScript提供了定义匿名函数的方式,这种创匿名函数的语法格式如下:
function(parameter list){
alert("AAA");
}
这种函数定义语法无须指定函数名,而是将参数列表紧跟fuction关键字。在函数定义域发的最后不要忘记紧跟分号。
我们举个例子:
<script type="text/javascript">
// 将有名字的函数赋值给变量f,因此test将会被忽略
var f = function test(name)
{
document.writeln('匿名函数<br />');
document.writeln('你好' + name);
};
f('yeeku');
// test函数并不存在,下面代码出现错误
test("abc");
</script>
结果如下:
匿名函数的作用其实也很大,在很长的JavaScript代码中,函数的变量名如果大部分都用匿名函数的话,会大大的降低出错的概率。他的具体作用可以概括到如下4点。
-
《Javascript的一种模块模式》中的第一句话就是“全局变量是魔鬼”。
-
配合var关键字,匿名函数可以有效的保证在页面上写入Javascript,而不会造成全局变量的污染。
-
这在给一个不是很熟悉的页面增加Javascript时非常有效,也很优美。
-
实际上,YUI以及其相应的范例中大量使用匿名函数,其他的Javascript库中也不乏大量使用。