javascript中匿名函数何时用

JavaScript013

javascript中匿名函数何时用,第1张

JS中的匿名函数的用法及优缺点 匿名函数可以有效的保证在页面上写入Javascript,而不会造成全局变量的污染。 这在给一个不是很熟悉的页面增加Javascript时非常有效,也很优美。 一、什么是匿名函数? 在Javascript定义一个函数一般有如下三种方式: 函数关键字(function)语句: function fnMethodName(x){alert(x)} 函数字面量(Function Literals): var fnMethodName = function(x){alert(x)} Function()构造函数: var fnMethodName = new Function('x','alert(x)') 上面三种方法定义了同一个方法函数fnMethodName, 第1种就是最常用的方法,后两种都是把一个函数复制给变量fnMethodName,而这个函数是没有名字的,即匿名函数。 实际上,相当多的语言都有匿名函数。 二、函数字面量和Function()构造函数的区别 虽然函数字面量是一个匿名函数,但语法允许为其指定任意一个函数名,当写递归函数时可以调用它自己,使用Function()构造函数则不行。

/* 第一种,赋值给变量然后通过变量调用 */

var fun = function(){

}

fun() //调用

/* 第二种就是立即执行,就是在匿名函数后边添加一个括号 */

(function(){

}())//结构一

function(){

}()//结构二

var fun2 = function(){

}()//结构三

方法一适合在任意位置调用,方法二适用于闭包