什么是匿名函数?
定义函数时,不指定函数名的函数
匿名函数的优点
1)节约内存
2)避免产生全局变量,造成全局污染
用处
用于回调函数,和匿名函数自调用
回调函数用不用匿名函数的区别
(1)不用匿名函数时eg:
var fn=function(a,b){ //function=new function
return a-b;
} //执行完后声明的变量fn还引用着函数作用域而不能释放,导致内存泄漏
arr.sort(fn); //执行后释放
(2)用匿名函数
arr.sort(function(a,b){
return a-b;
}) //因为没有变量引用函数作用域,程序执行完后函数作用域被释放
匿名函数自调用
定义一个函数后,立刻调用该函数执行,调用后释放
格式
(function(){....})();
//创建函数 立刻调用
//因为该函数没有名字,调用后后,立刻释放