JAVASCRIPT中的匿名函数指的是没有名字的函数吗,有何作用啊,在代码文本中作用域有多大啊。是

2024-11-16 20:41:39
推荐回答(2个)
回答(1):

//作用域和匿名函数没用任何关系
//js中函数内的变量在函数内的任何地方都能访问
//window对象下定义的变量均为全局变量,如:
var i = 1;    //这个变量就是全局变量
function fun(){
    var j = 1;    //这个j是局部变量,在fun里面的任何地方都能访问
}

//说匿名函数
$(function(){
    //这个function(){}就是匿名函数
});
var fun1 = function(){
    //这个function(){}也是匿名函数
}

//论匿名函数的重要性
//js中的匿名函数的重要性不亚于三元运算
//不过js中任何能用匿名函数实现的代码用普通函数都能实现
//就好比任何三元运算都能用if实现一样
$("body").click(function(){
    //jquery最基本的绑定click事件的一种
});
//上面这里用的就是匿名函数,可以用下面的代码代替
function clickHandle(){
    
}
$("body").click(clickHandle);

//说自运行函数
(function(){
    //这里还是匿名函数
})();
//上面的自运行函数(闭包操作)可以改成下面这样
function tempFun(){

}
tempFun();

//有帮助的话麻烦采纳下,手打不易,谢谢!

回答(2):

//匿名函数就是没有名字的函数
//一般情况下匿名函数是用来避免全局污染的
(function(){
    var a = 1;
    var b = 2;
})()
//以上方法是匿名函数自调用,因为js分为局部作用域和全局作用域,这样你把你所有的代码写到这个
//function里面,你这些a ,b这些变量就不会对函数外的空间污染。也就是保证变量的安全