立即执行函数
针对初始化功能的函数
好处:执行一次之后就销毁,不占用空间,立即执行函数依然可以有返回值
基本形式:
(function (){}())-->建议使用这种写法
(function(){})();
//数学符号优先级比较高,第一种方法的原因就是这样,会先执行里面的 括号的优先级比较低
//只有表达式才能被执行
function test(){} //函数声明
var demo = function(){};-->函数表达式
-/+ function test(){} --> 这样就可以变成函数表达式 相当于 立即执行函数
立即执行函数
函数打印出0-9十个数字
function test(){
var arr= [];
for(var i = 0; i < 10; i++){
(function(j){//立即执行函数
arr[j] = function(){
console.log(j);
}
}(i))
}
return arr;
}
var myArr = test();
for(var j = 0; j < 10;j++){
myArr[j]();
}
假如没有用立即执行函数,执行以下函数,会打印出十个10
function test(){
var arr = [];
for(var i = 0; i < 10; i++){
arr[i] = function(){
console.log(i);
}
}
return arr;
}
var myArr = test();
for(var j = 0; j < 10; j++){
myArr[j]();
}